This WA is required when decoupled frequencies for slice and unslice
are enabled. This disables DOP clock gating for gen9.

v2: enable the WA for all gen9 platforms (not just for SKL GT4 where
    the hang issue is originally reported) to avoid rare hangs (David)

Cc: David Weinehall <david.weineh...@linux.intel.com>
Reviewed-by: David Weinehall <david.weineh...@linux.intel.com>
Signed-off-by: Praveen Paneri <praveen.pan...@intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 3fc42aa..e369d77 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -88,6 +88,12 @@ static void gen9_init_clock_gating(struct drm_i915_private 
*dev_priv)
        /* WaFbcHighMemBwCorruptionAvoidance:skl,bxt,kbl,cfl */
        I915_WRITE(ILK_DPFC_CHICKEN, I915_READ(ILK_DPFC_CHICKEN) |
                   ILK_DPFC_DISABLE_DUMMY0);
+
+       if (IS_GEN9(dev_priv)) {
+               /* WaDisableDopClockGating */
+               I915_WRITE(GEN7_MISCCPCTL, I915_READ(GEN7_MISCCPCTL)
+                          & ~GEN7_DOP_CLOCK_GATE_ENABLE);
+       }
 }
 
 static void bxt_init_clock_gating(struct drm_i915_private *dev_priv)
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to