[Intel-gfx] [RFC PATCH v6 0/6] Refactor HW workaround code

Ville Syrjälä ville.syrjala at linux.intel.com
Thu Nov 9 13:43:35 UTC 2017


On Wed, Nov 08, 2017 at 03:59:43PM -0800, Oscar Mateo wrote:
> Until we agree on a design, I have removed all new code to save the actual list
> of WAs and dump it in debugfs. For the moment, only shuffle things arounds until
> most WAs are in the same file (and classified correctly according to the type
> of WA).
> 
> From previous versions of these series:
> 
> Currently, deciding how/where to apply new workarounds is challenging. Often,
> workarounds end up applied incorrectly and get lost under certain circumstances
> (e.g. a context switch or a GPU reset). This is a proposal to attempt to
> eliminate some of this pain, by clarifying the current classification of
> workarounds (context saved/restored, global registers, whitelisting, BB),
> putting them together on the same file, and improving the existing validation
> infrastructure (debugfs/i-g-t).
> 
> Oscar Mateo (6):
>   drm/i915: Remove Gen9 WAs with no effect
>   drm/i915: Move a bunch of workaround-related code to its own file
>   drm/i915: Split out functions for different kinds of workarounds
>   drm/i915: Move WA BB stuff to the workarounds file as well
>   drm/i915: Create a new category of display WAs
>   drm/i915: Classify GT & Display WAs correctly
> 
>  drivers/gpu/drm/i915/Makefile            |    3 +-
>  drivers/gpu/drm/i915/i915_gem.c          |    3 +
>  drivers/gpu/drm/i915/i915_gem_context.c  |    5 +
>  drivers/gpu/drm/i915/i915_reg.h          |    3 -
>  drivers/gpu/drm/i915/intel_engine_cs.c   |  682 --------------
>  drivers/gpu/drm/i915/intel_lrc.c         |  264 +-----
>  drivers/gpu/drm/i915/intel_pm.c          |  312 +------
>  drivers/gpu/drm/i915/intel_ringbuffer.c  |    5 +-
>  drivers/gpu/drm/i915/intel_ringbuffer.h  |    3 -
>  drivers/gpu/drm/i915/intel_workarounds.c | 1432 ++++++++++++++++++++++++++++++
>  drivers/gpu/drm/i915/intel_workarounds.h |   40 +

Maybe we should call that intel_gt_workarounds.c? Or
i915_something_workarounds.c? We could then add a separate 
intel_display_workarounds.c for the display stuff.

>  11 files changed, 1503 insertions(+), 1249 deletions(-)
>  create mode 100644 drivers/gpu/drm/i915/intel_workarounds.c
>  create mode 100644 drivers/gpu/drm/i915/intel_workarounds.h
> 
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list