aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_display.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 979228594599..932a061f28d0 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2044,9 +2044,11 @@ static void ironlake_crtc_dpms(struct drm_crtc *crtc, int mode)
2044 2044
2045 reg = I915_READ(trans_dp_ctl); 2045 reg = I915_READ(trans_dp_ctl);
2046 reg &= ~(TRANS_DP_PORT_SEL_MASK | 2046 reg &= ~(TRANS_DP_PORT_SEL_MASK |
2047 TRANS_DP_SYNC_MASK); 2047 TRANS_DP_SYNC_MASK |
2048 TRANS_DP_BPC_MASK);
2048 reg |= (TRANS_DP_OUTPUT_ENABLE | 2049 reg |= (TRANS_DP_OUTPUT_ENABLE |
2049 TRANS_DP_ENH_FRAMING); 2050 TRANS_DP_ENH_FRAMING);
2051 reg |= TRANS_DP_8BPC;
2050 2052
2051 if (crtc->mode.flags & DRM_MODE_FLAG_PHSYNC) 2053 if (crtc->mode.flags & DRM_MODE_FLAG_PHSYNC)
2052 reg |= TRANS_DP_HSYNC_ACTIVE_HIGH; 2054 reg |= TRANS_DP_HSYNC_ACTIVE_HIGH;
@@ -5674,6 +5676,13 @@ void intel_init_clock_gating(struct drm_device *dev)
5674 I915_WRITE(PCH_DSPCLK_GATE_D, dspclk_gate); 5676 I915_WRITE(PCH_DSPCLK_GATE_D, dspclk_gate);
5675 5677
5676 /* 5678 /*
5679 * On Ibex Peak and Cougar Point, we need to disable clock
5680 * gating for the panel power sequencer or it will fail to
5681 * start up when no ports are active.
5682 */
5683 I915_WRITE(SOUTH_DSPCLK_GATE_D, PCH_DPLSUNIT_CLOCK_GATE_DISABLE);
5684
5685 /*
5677 * According to the spec the following bits should be set in 5686 * According to the spec the following bits should be set in
5678 * order to enable memory self-refresh 5687 * order to enable memory self-refresh
5679 * The bit 22/21 of 0x42004 5688 * The bit 22/21 of 0x42004