drm/i915/xelpg: Add Wa_14020495402
authorRadhakrishna Sripada <radhakrishna.sripada@intel.com>
Mon, 18 Mar 2024 21:00:25 +0000 (14:00 -0700)
committerRadhakrishna Sripada <radhakrishna.sripada@intel.com>
Wed, 20 Mar 2024 17:51:12 +0000 (10:51 -0700)
Disable clockgating for TDL SVHS fub.

v2: Implement in general render/compute wa's(MattR)

Bspec: 46045
Cc: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240318210025.562698-1-radhakrishna.sripada@intel.com
drivers/gpu/drm/i915/gt/intel_gt_regs.h
drivers/gpu/drm/i915/gt/intel_workarounds.c

index 50962cfd1353ae4673b27a9bb2437d47633b5651..1f778b77f4f8b9316842e55c4a6b2dedb156bec6 100644 (file)
 #define   GEN12_DISABLE_EARLY_READ             REG_BIT(14)
 #define   GEN12_ENABLE_LARGE_GRF_MODE          REG_BIT(12)
 #define   GEN12_PUSH_CONST_DEREF_HOLD_DIS      REG_BIT(8)
+#define   XELPG_DISABLE_TDL_SVHS_GATING                REG_BIT(1)
 #define   GEN12_DISABLE_DOP_GATING              REG_BIT(0)
 
 #define RT_CTRL                                        MCR_REG(0xe530)
index 09461a3832dc29f708bb45aa79d44849b70e6c74..6352e38e0fa04c761fc72e26800d0b6b4e63e1ad 100644 (file)
@@ -2891,10 +2891,14 @@ general_render_compute_wa_init(struct intel_engine_cs *engine, struct i915_wa_li
 
        if (IS_GFX_GT_IP_STEP(gt, IP_VER(12, 70), STEP_B0, STEP_FOREVER) ||
            IS_GFX_GT_IP_STEP(gt, IP_VER(12, 71), STEP_B0, STEP_FOREVER) ||
-           IS_GFX_GT_IP_RANGE(gt, IP_VER(12, 74), IP_VER(12, 74)))
+           IS_GFX_GT_IP_RANGE(gt, IP_VER(12, 74), IP_VER(12, 74))) {
                /* Wa_14017856879 */
                wa_mcr_masked_en(wal, GEN9_ROW_CHICKEN3, MTL_DISABLE_FIX_FOR_EOT_FLUSH);
 
+               /* Wa_14020495402 */
+               wa_mcr_masked_en(wal, GEN8_ROW_CHICKEN2, XELPG_DISABLE_TDL_SVHS_GATING);
+       }
+
        if (IS_GFX_GT_IP_STEP(gt, IP_VER(12, 70), STEP_A0, STEP_B0) ||
            IS_GFX_GT_IP_STEP(gt, IP_VER(12, 71), STEP_A0, STEP_B0))
                /*