[PATCH] drm/i915/gt: Avoid duplicating CCS mode workaround

Andi Shyti andi.shyti at linux.intel.com
Tue Mar 25 12:01:37 UTC 2025


When generating workarounds for the CCS engine, specifically for
setting the CCS mode related to compute load balancing, the
function 'ccs_engine_wa_mode()' is called twice: once for the
render engine and once for the compute engine.

Add a check to ensure the engine class is compute before applying
the workaround to avoid redundant programming.

Suggested-by: Arshad Mehmood <arshad.mehmood at intel.com>
Signed-off-by: Andi Shyti <andi.shyti at linux.intel.com>
---
 drivers/gpu/drm/i915/gt/intel_workarounds.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c
index 116683ebe074..37251546b755 100644
--- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
@@ -2897,7 +2897,9 @@ engine_init_workarounds(struct intel_engine_cs *engine, struct i915_wa_list *wal
 	 */
 	if (engine->flags & I915_ENGINE_FIRST_RENDER_COMPUTE) {
 		general_render_compute_wa_init(engine, wal);
-		ccs_engine_wa_mode(engine, wal);
+
+		if (engine->class == COMPUTE_CLASS)
+			ccs_engine_wa_mode(engine, wal);
 	}
 
 	if (engine->class == COMPUTE_CLASS)
-- 
2.47.2



More information about the dri-devel mailing list