drm/amd/display: Fix ASSR regression on embedded panels
[Why] Regression found in some embedded panels traces back to the earliest upstreamed ASSR patch. The changed code flow are causing problems with some panels. [How] - Change ASSR enabling code while preserving original code flow as much as possible - Simplify the code on guarding with internal display flag Bug: https://bugzilla.kernel.org/show_bug.cgi?id=213779 Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1620 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Stylon Wang <stylon.wang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
This commit is contained in:
parent
27f5355f5d
commit
6be50f5d83
|
@ -1820,8 +1820,7 @@ bool perform_link_training_with_retries(
|
|||
*/
|
||||
panel_mode = DP_PANEL_MODE_DEFAULT;
|
||||
}
|
||||
} else
|
||||
panel_mode = DP_PANEL_MODE_DEFAULT;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -4650,7 +4649,10 @@ enum dp_panel_mode dp_get_panel_mode(struct dc_link *link)
|
|||
}
|
||||
}
|
||||
|
||||
if (link->dpcd_caps.panel_mode_edp) {
|
||||
if (link->dpcd_caps.panel_mode_edp &&
|
||||
(link->connector_signal == SIGNAL_TYPE_EDP ||
|
||||
(link->connector_signal == SIGNAL_TYPE_DISPLAY_PORT &&
|
||||
link->is_internal_display))) {
|
||||
return DP_PANEL_MODE_EDP;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue