[Intel-gfx] [PATCH 05/12] drm/i915/bxt: update WaSetHDCunitClckGatingDisable

Arun Siluvery arun.siluvery at linux.intel.com
Fri Sep 25 06:33:39 PDT 2015


The implementation for this WA is same as WaSetHdcUnitClockGatingDisableInUcgctl6.
Both of them are for BXT:A0 except that WaSetHdcUnitClockGatingDisableInUcgctl6
is applicable only when either SS0 or SS2 is active but if we apply the former WA
then the latter one also gets applied irrespective of which SS is enabled.

Signed-off-by: Arun Siluvery <arun.siluvery at linux.intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 093a5e4..c73d37d 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -124,12 +124,17 @@ static void bxt_init_clock_gating(struct drm_device *dev)
 	I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) |
 		   GEN8_SDEUNIT_CLOCK_GATE_DISABLE);
 
-	/*
-	 * FIXME:
-	 * GEN8_HDCUNIT_CLOCK_GATE_DISABLE_HDCREQ applies on 3x6 GT SKUs only.
+	/* WaSetHDCunitClckGatingDisable:bxt */
+	/* WaSetHdcUnitClockGatingDisableInUcgctl6:bxt */
+	/* The implementation is same for both of these WA except that
+	 * WaSetHdcUnitClockGatingDisableInUcgctl6 is only applicable when
+	 * either SS0 or SS2 is active but if we apply the first one then the
+	 * second one also gets applied irrespective of which SS is enabled.
 	 */
-	I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) |
-		   GEN8_HDCUNIT_CLOCK_GATE_DISABLE_HDCREQ);
+	if (INTEL_REVID(dev) == BXT_REVID_A0) {
+		I915_WRITE(GEN8_UCGCTL6, (I915_READ(GEN8_UCGCTL6) |
+					  GEN8_HDCUNIT_CLOCK_GATE_DISABLE_HDCREQ));
+	}
 
 	if (INTEL_REVID(dev) == BXT_REVID_A0) {
 		/*
-- 
1.9.1



More information about the Intel-gfx mailing list