diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 11 |
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 |