[Intel-gfx] [PATCH 1/7] drm/i915: Record GT workarounds in a list
Chris Wilson
chris at chris-wilson.co.uk
Mon Dec 3 12:53:07 UTC 2018
Quoting Tvrtko Ursulin (2018-12-03 12:50:08)
> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>
> To enable later verification of GT workaround state at various stages of
> driver lifetime, we record the list of applicable ones per platforms to a
> list, from which they are also applied.
>
> The added data structure is a simple array of register, mask and value
> items, which is allocated on demand as workarounds are added to the list.
>
> This is a temporary implementation which later in the series gets fused
> with the existing per context workaround list handling. It is separated at
> this stage since the following patch fixes a bug which needs to be as easy
> to backport as possible.
>
> Also, since in the following patch we will be adding a new class of
> workarounds (per engine) which can be applied from interrupt context, we
> straight away make the provision for safe read-modify-write cycle.
>
> v2:
> * Change dev_priv to i915 along the init path. (Chris Wilson)
> * API rename. (Chris Wilson)
>
> v3:
> * Remove explicit list size tracking in favour of growing the allocation
> in power of two chunks. (Chris Wilson)
>
> v4:
> Chris Wilson:
> * Change wa_list_finish to early return.
> * Copy workarounds using the compiler for static checking.
> * Do not bother zeroing unused entries.
> * Re-order struct i915_wa_list.
>
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk> # v2
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
-Chris
More information about the Intel-gfx
mailing list