Эх сурвалжийг харах

drm/i915: Call encoder->post_disable() in intel_sanitize_encoder()

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ä <ville.syrjala@linux.intel.com>
Reviewed-by: Rafael Barbalho <rafael.barbalho@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ville Syrjälä 11 жил өмнө
parent
commit
a62d149758

+ 2 - 0
drivers/gpu/drm/i915/intel_display.c

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