drm/i915: Call encoder->post_disable() in intel_sanitize_encoder()
authorVille Syrjälä <[email protected]>
Fri, 27 Jun 2014 23:04:01 +0000 (02:04 +0300)
committerDaniel Vetter <[email protected]>
Fri, 11 Jul 2014 16:13:36 +0000 (18:13 +0200)
VLV and CHV disable the DP port only in the .post_disable() hook, so we
need to make intel_sanitize_encoder() call that when it's trying to
disable encoders without an active pipes.

My bsw actaully hits this when an external display is connected. The
BIOS still likes to turn on the eDP port, but leaves the pipe disabled.

Signed-off-by: Ville Syrjälä <[email protected]>
Reviewed-by: Rafael Barbalho <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
drivers/gpu/drm/i915/intel_display.c

index f31ad8d0f6ea52fe818c444acc7872f53980e6d7..d2b752dd0aafa3768a4c52dd2c2f8d8ca6032a44 100644 (file)
@@ -12775,6 +12775,8 @@ static void intel_sanitize_encoder(struct intel_encoder *encoder)
                                      encoder->base.base.id,
                                      encoder->base.name);
                        encoder->disable(encoder);
+                       if (encoder->post_disable)
+                               encoder->post_disable(encoder);
                }
                encoder->base.crtc = NULL;
                encoder->connectors_active = false;