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.mehm...@intel.com>
Signed-off-by: Andi Shyti <andi.sh...@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

Reply via email to