]> www.infradead.org Git - users/dwmw2/linux.git/commit
drm/i915/xehp: Loop over all gslices for INSTDONE processing
authorMatt Roper <matthew.d.roper@intel.com>
Thu, 5 Aug 2021 16:36:40 +0000 (09:36 -0700)
committerMatt Roper <matthew.d.roper@intel.com>
Wed, 11 Aug 2021 15:21:12 +0000 (08:21 -0700)
commitfa9899dad3ed84a8b6433467670d4cacd9b873bc
tree3943c00599f43511abe8b829b95ba69e1a4a3bc7
parentdae2d28832968751f7731336b560a4a84a197b76
drm/i915/xehp: Loop over all gslices for INSTDONE processing

We no longer have traditional slices on Xe_HP platforms, but the
INSTDONE registers are replicated according to gslice representation
which is similar.  We can mostly re-use the existing instdone code with
just a few modifications:

 * Create an alternate instdone loop macro that will iterate over the
   flat DSS space, but still provide the gslice/dss steering values for
   compatibility with the legacy code.

 * We should allocate INSTDONE storage space according to the maximum
   number of gslices rather than the maximum number of legacy slices to
   ensure we have enough storage space to hold all of the values.  XeHP
   design has 8 gslices, whereas older platforms never had more than 3
   slices.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210805163647.801064-3-matthew.d.roper@intel.com
drivers/gpu/drm/i915/gt/intel_engine_cs.c
drivers/gpu/drm/i915/gt/intel_engine_types.h
drivers/gpu/drm/i915/gt/intel_sseu.h
drivers/gpu/drm/i915/i915_gpu_error.c