diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 3bd40a4a6739..5098228f1302 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -12082,6 +12082,7 @@ intel_pipe_config_compare(struct drm_i915_private *dev_priv, | |||
12082 | struct intel_crtc_state *pipe_config, | 12082 | struct intel_crtc_state *pipe_config, |
12083 | bool adjust) | 12083 | bool adjust) |
12084 | { | 12084 | { |
12085 | struct intel_crtc *crtc = to_intel_crtc(current_config->base.crtc); | ||
12085 | bool ret = true; | 12086 | bool ret = true; |
12086 | bool fixup_inherited = adjust && | 12087 | bool fixup_inherited = adjust && |
12087 | (current_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED) && | 12088 | (current_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED) && |
@@ -12303,6 +12304,14 @@ intel_pipe_config_compare(struct drm_i915_private *dev_priv, | |||
12303 | PIPE_CONF_CHECK_X(gmch_pfit.pgm_ratios); | 12304 | PIPE_CONF_CHECK_X(gmch_pfit.pgm_ratios); |
12304 | PIPE_CONF_CHECK_X(gmch_pfit.lvds_border_bits); | 12305 | PIPE_CONF_CHECK_X(gmch_pfit.lvds_border_bits); |
12305 | 12306 | ||
12307 | /* | ||
12308 | * Changing the EDP transcoder input mux | ||
12309 | * (A_ONOFF vs. A_ON) requires a full modeset. | ||
12310 | */ | ||
12311 | if (IS_HASWELL(dev_priv) && crtc->pipe == PIPE_A && | ||
12312 | current_config->cpu_transcoder == TRANSCODER_EDP) | ||
12313 | PIPE_CONF_CHECK_BOOL(pch_pfit.enabled); | ||
12314 | |||
12306 | if (!adjust) { | 12315 | if (!adjust) { |
12307 | PIPE_CONF_CHECK_I(pipe_src_w); | 12316 | PIPE_CONF_CHECK_I(pipe_src_w); |
12308 | PIPE_CONF_CHECK_I(pipe_src_h); | 12317 | PIPE_CONF_CHECK_I(pipe_src_h); |