]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/xehp: Support platforms with CCS engines but no RCS
authorMatt Roper <matthew.d.roper@intel.com>
Thu, 3 Mar 2022 22:34:34 +0000 (14:34 -0800)
committerMatt Roper <matthew.d.roper@intel.com>
Fri, 4 Mar 2022 16:02:15 +0000 (08:02 -0800)
commit01f812f580608569ded453a478d20894d7779645
treecdc137780e4d9fb94f3667f4e930263ee8d13a24
parent4e524a08c200b5c5d6f0f4747ed9f0b07c3645fb
drm/i915/xehp: Support platforms with CCS engines but no RCS

In the past we've always assumed that an RCS engine is present on every
platform.  However now that we have compute engines there may be
platforms that have CCS engines but no RCS, or platforms that are
designed to have both, but have the RCS engine fused off.

Various engine-centric initialization that only needs to be done a
single time for the group of RCS+CCS engines can't rely on being setup
with the RCS now; instead we add a I915_ENGINE_FIRST_RENDER_COMPUTE flag
that will be assigned to a single engine in the group; whichever engine
has this flag will be responsible for some of the general setup
(RCU_MODE programming, initialization of certain workarounds, etc.).

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/20220303223435.2793124-1-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_execlists_submission.c
drivers/gpu/drm/i915/gt/intel_workarounds.c
drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
drivers/gpu/drm/i915/i915_drv.h