aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2013-06-07 03:47:02 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-06-07 04:37:52 -0400
commit20f949670f51341f255b17ec4650fa69ba22cb87 (patch)
tree28f38f697424251bdcc68b55d1199c238096a446
parentde1aa629aac8377bdfc55674bb8e30b5f15f418d (diff)
drm/i915: Disable trickle feed via MI_ARB_STATE for the gen4
According to BSpec, trickle feed should be disabled for BW and mobile CL. Those constraints seem to match all of our gen4 chipsets. Trickle feed is disabled via the MI_ARB_STATE register instead of per plane controls on gen4. Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 47f3c48cd3c2..2948764d7e38 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -4944,6 +4944,8 @@ static void crestline_init_clock_gating(struct drm_device *dev)
4944 I915_WRITE(DSPCLK_GATE_D, 0); 4944 I915_WRITE(DSPCLK_GATE_D, 0);
4945 I915_WRITE(RAMCLK_GATE_D, 0); 4945 I915_WRITE(RAMCLK_GATE_D, 0);
4946 I915_WRITE16(DEUC, 0); 4946 I915_WRITE16(DEUC, 0);
4947 I915_WRITE(MI_ARB_STATE,
4948 _MASKED_BIT_ENABLE(MI_ARB_DISPLAY_TRICKLE_FEED_DISABLE));
4947} 4949}
4948 4950
4949static void broadwater_init_clock_gating(struct drm_device *dev) 4951static void broadwater_init_clock_gating(struct drm_device *dev)
@@ -4956,6 +4958,8 @@ static void broadwater_init_clock_gating(struct drm_device *dev)
4956 I965_ISC_CLOCK_GATE_DISABLE | 4958 I965_ISC_CLOCK_GATE_DISABLE |
4957 I965_FBC_CLOCK_GATE_DISABLE); 4959 I965_FBC_CLOCK_GATE_DISABLE);
4958 I915_WRITE(RENCLK_GATE_D2, 0); 4960 I915_WRITE(RENCLK_GATE_D2, 0);
4961 I915_WRITE(MI_ARB_STATE,
4962 _MASKED_BIT_ENABLE(MI_ARB_DISPLAY_TRICKLE_FEED_DISABLE));
4959} 4963}
4960 4964
4961static void gen3_init_clock_gating(struct drm_device *dev) 4965static void gen3_init_clock_gating(struct drm_device *dev)