drm/i915/ddi: For an active output call the DP encoder sync_state() only for DP

If the DDI encoder output is enabled in HDMI mode there is no point in
calling intel_dp_sync_state(), as in that case the DPCD initialization
will fail - as expected - with AUX timeouts. Prevent calling the hook in
this case.

Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240722165503.2084999-5-imre.deak@intel.com
This commit is contained in:
Imre Deak 2024-07-22 19:54:53 +03:00
parent 0cf09702a1
commit a64d5fe490

View File

@ -4172,7 +4172,8 @@ static void intel_ddi_sync_state(struct intel_encoder *encoder,
intel_tc_port_sanitize_mode(enc_to_dig_port(encoder),
crtc_state);
if (intel_encoder_is_dp(encoder))
if ((crtc_state && intel_crtc_has_dp_encoder(crtc_state)) ||
(!crtc_state && intel_encoder_is_dp(encoder)))
intel_dp_sync_state(encoder, crtc_state);
}