diff options
author | Mika Kuoppala <mika.kuoppala@linux.intel.com> | 2016-06-07 10:19:05 -0400 |
---|---|---|
committer | Mika Kuoppala <mika.kuoppala@intel.com> | 2016-07-15 08:51:25 -0400 |
commit | 4ac4199434ac1d847e02c61a6e9d1cb35bb91b0e (patch) | |
tree | 4396354e9b31c2089e79f2540e560a7e5ab0dade | |
parent | 11b283412e165abf1ad19c1ba4bdde399944b600 (diff) |
drm/i915/kbl: Add WaDisableGamClockGating
According to bspec we need to disable gam unit clock gating on
on kbl revids A0 and B0.
References: HSD#2226858, HSD#1944358
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1465309159-30531-14-git-send-email-mika.kuoppala@intel.com
(cherry picked from commit 8aeb7f624fbf8a68a9c67f831d4158a0f80ea920)
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
-rw-r--r-- | drivers/gpu/drm/i915/i915_reg.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_pm.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index d014b8fabb71..3e16b9dadd92 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -6926,6 +6926,7 @@ enum skl_disp_power_wells { | |||
6926 | #define EDRAM_SETS_IDX(cap) (((cap) >> 8) & 0x3) | 6926 | #define EDRAM_SETS_IDX(cap) (((cap) >> 8) & 0x3) |
6927 | 6927 | ||
6928 | #define GEN6_UCGCTL1 _MMIO(0x9400) | 6928 | #define GEN6_UCGCTL1 _MMIO(0x9400) |
6929 | # define GEN6_GAMUNIT_CLOCK_GATE_DISABLE (1 << 22) | ||
6929 | # define GEN6_EU_TCUNIT_CLOCK_GATE_DISABLE (1 << 16) | 6930 | # define GEN6_EU_TCUNIT_CLOCK_GATE_DISABLE (1 << 16) |
6930 | # define GEN6_BLBUNIT_CLOCK_GATE_DISABLE (1 << 5) | 6931 | # define GEN6_BLBUNIT_CLOCK_GATE_DISABLE (1 << 5) |
6931 | # define GEN6_CSUNIT_CLOCK_GATE_DISABLE (1 << 7) | 6932 | # define GEN6_CSUNIT_CLOCK_GATE_DISABLE (1 << 7) |
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index 7ae5bfdbf569..3f0f1880d4af 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c | |||
@@ -6722,6 +6722,11 @@ static void kabylake_init_clock_gating(struct drm_device *dev) | |||
6722 | if (IS_KBL_REVID(dev_priv, 0, KBL_REVID_B0)) | 6722 | if (IS_KBL_REVID(dev_priv, 0, KBL_REVID_B0)) |
6723 | I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) | | 6723 | I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) | |
6724 | GEN8_SDEUNIT_CLOCK_GATE_DISABLE); | 6724 | GEN8_SDEUNIT_CLOCK_GATE_DISABLE); |
6725 | |||
6726 | /* WaDisableGamClockGating:kbl */ | ||
6727 | if (IS_KBL_REVID(dev_priv, 0, KBL_REVID_B0)) | ||
6728 | I915_WRITE(GEN6_UCGCTL1, I915_READ(GEN6_UCGCTL1) | | ||
6729 | GEN6_GAMUNIT_CLOCK_GATE_DISABLE); | ||
6725 | } | 6730 | } |
6726 | 6731 | ||
6727 | static void skylake_init_clock_gating(struct drm_device *dev) | 6732 | static void skylake_init_clock_gating(struct drm_device *dev) |