[RFC PATCH 00/11] Refactor HW workaround code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 (11):
  drm/i915: No need for RING_MAX_NONPRIV_SLOTS space
  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 workarounds from init_clock_gating
  drm/i915: Rename saved workarounds to make it explicit that they are
    context WAs
  drm/i915: Save all MMIO WAs and apply them at a later time
  drm/i915: Save all Whitelist WAs and apply them at a later time
  drm/i915: Print all workaround types correctly in debugfs
  drm/i915: Move WA BB stuff to the workarounds file as well
  drm/i915: Document the i915_workarounds file
  drm/i915: Remove Gen9 WAs with no effect

 drivers/gpu/drm/i915/Makefile           |    1 +
 drivers/gpu/drm/i915/i915_debugfs.c     |   52 +-
 drivers/gpu/drm/i915/i915_drv.c         |    5 +
 drivers/gpu/drm/i915/i915_drv.h         |   20 +-
 drivers/gpu/drm/i915/i915_gem.c         |    3 +
 drivers/gpu/drm/i915/i915_gem_context.c |    5 +
 drivers/gpu/drm/i915/i915_reg.h         |    4 +-
 drivers/gpu/drm/i915/i915_workarounds.c | 1307 +++++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/i915_workarounds.h |   40 +
 drivers/gpu/drm/i915/intel_engine_cs.c  |  679 ----------------
 drivers/gpu/drm/i915/intel_lrc.c        |  266 +------
 drivers/gpu/drm/i915/intel_pm.c         |  188 +----
 drivers/gpu/drm/i915/intel_ringbuffer.c |    5 +-
 drivers/gpu/drm/i915/intel_ringbuffer.h |    3 -
 14 files changed, 1429 insertions(+), 1149 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_workarounds.c
 create mode 100644 drivers/gpu/drm/i915/i915_workarounds.h

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux