[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