OSDN Git Service

drm/i915/dg2: introduce Wa_22015475538
authorMatt Atwood <matthew.s.atwood@intel.com>
Tue, 20 Sep 2022 20:43:59 +0000 (13:43 -0700)
committerMatt Roper <matthew.d.roper@intel.com>
Fri, 23 Sep 2022 17:47:58 +0000 (10:47 -0700)
Wa_22015475538 applies to all DG2 (and ATSM) skus. The workaround
implementation is identical to Wa_16011620976. LSC_CHICKEN_BIT_0_UDW is
a general render register instead of rcs so adding this move to the
proper wa init function.

bspec:54077

Signed-off-by: Matt Atwood <matthew.s.atwood@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220920204359.103370-1-matthew.s.atwood@intel.com
drivers/gpu/drm/i915/gt/intel_workarounds.c

index d04652a..ff52206 100644 (file)
@@ -2118,9 +2118,6 @@ rcs_engine_wa_init(struct intel_engine_cs *engine, struct i915_wa_list *wal)
        if (IS_DG2_GRAPHICS_STEP(i915, G11, STEP_A0, STEP_B0)) {
                /* Wa_14013392000:dg2_g11 */
                wa_masked_en(wal, GEN7_ROW_CHICKEN2, GEN12_ENABLE_LARGE_GRF_MODE);
-
-               /* Wa_16011620976:dg2_g11 */
-               wa_write_or(wal, LSC_CHICKEN_BIT_0_UDW, DIS_CHAIN_2XSIMD8);
        }
 
        if (IS_DG2_GRAPHICS_STEP(i915, G10, STEP_B0, STEP_FOREVER) ||
@@ -2790,6 +2787,14 @@ general_render_compute_wa_init(struct intel_engine_cs *engine, struct i915_wa_li
                wa_write_or(wal, VDBX_MOD_CTRL, FORCE_MISS_FTLB);
                wa_write_or(wal, VEBX_MOD_CTRL, FORCE_MISS_FTLB);
        }
+
+       if (IS_DG2(i915)) {
+               /*
+                * Wa_16011620976:dg2_g11
+                * Wa_22015475538:dg2
+                */
+               wa_write_or(wal, LSC_CHICKEN_BIT_0_UDW, DIS_CHAIN_2XSIMD8);
+       }
 }
 
 static void