mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-16 19:47:38 -04:00
drm/amd/display: Move verify link cap after read edid
DP link layer test 400.1.1 fails intermittently. The test device will pull hpd low immediately after verify link cap. Driver reads edid when hpd low that causes the test to fail. Move read edid before verify link cap, so driver will read edid before starting link training Signed-off-by: Wenjing Liu <Wenjing.Liu@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <Harry.Wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
d66cf5f501
commit
f334073ae3
@@ -666,6 +666,22 @@ bool dc_link_detect(struct dc_link *link, bool boot)
|
||||
break;
|
||||
}
|
||||
|
||||
if (link->connector_signal == SIGNAL_TYPE_DISPLAY_PORT &&
|
||||
sink_caps.transaction_type ==
|
||||
DDC_TRANSACTION_TYPE_I2C_OVER_AUX) {
|
||||
/*
|
||||
* TODO debug why Dell 2413 doesn't like
|
||||
* two link trainings
|
||||
*/
|
||||
if (is_mst_supported(link)) {
|
||||
link->verified_link_cap =
|
||||
link->reported_link_cap;
|
||||
} else {
|
||||
dp_hbr_verify_link_cap(link,
|
||||
&link->reported_link_cap);
|
||||
}
|
||||
}
|
||||
|
||||
/* HDMI-DVI Dongle */
|
||||
if (sink->sink_signal == SIGNAL_TYPE_HDMI_TYPE_A &&
|
||||
!sink->edid_caps.edid_hdmi)
|
||||
|
||||
@@ -2283,13 +2283,6 @@ void detect_dp_sink_caps(struct dc_link *link)
|
||||
* DP, hw_init may need check signal or power up
|
||||
* encoder here.
|
||||
*/
|
||||
|
||||
if (is_mst_supported(link)) {
|
||||
link->verified_link_cap = link->reported_link_cap;
|
||||
} else {
|
||||
dp_hbr_verify_link_cap(link,
|
||||
&link->reported_link_cap);
|
||||
}
|
||||
/* TODO save sink caps in link->sink */
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user