Skip to content

Commit 67cf14c

Browse files
Wenjing Liugregkh
authored andcommitted
drm/amd/display: use preferred link settings for dp signal only
[ Upstream commit abf34ca ] [why] We set preferred link settings for virtual signal. However we don't support virtual signal for UHBR link rate. If preferred is set to UHBR link rate, we will allow virtual signal with UHBR link rate which causes system crashes. Reviewed-by: Dillon Varone <dillon.varone@amd.com> Acked-by: Zaeem Mohamed <zaeem.mohamed@amd.com> Signed-off-by: Wenjing Liu <wenjing.liu@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 800a5ab commit 67cf14c

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -908,21 +908,17 @@ bool link_decide_link_settings(struct dc_stream_state *stream,
908908

909909
memset(link_setting, 0, sizeof(*link_setting));
910910

911-
/* if preferred is specified through AMDDP, use it, if it's enough
912-
* to drive the mode
913-
*/
914-
if (link->preferred_link_setting.lane_count !=
915-
LANE_COUNT_UNKNOWN &&
916-
link->preferred_link_setting.link_rate !=
917-
LINK_RATE_UNKNOWN) {
911+
if (dc_is_dp_signal(stream->signal) &&
912+
link->preferred_link_setting.lane_count != LANE_COUNT_UNKNOWN &&
913+
link->preferred_link_setting.link_rate != LINK_RATE_UNKNOWN) {
914+
/* if preferred is specified through AMDDP, use it, if it's enough
915+
* to drive the mode
916+
*/
918917
*link_setting = link->preferred_link_setting;
919-
return true;
920-
}
921-
922-
/* MST doesn't perform link training for now
923-
* TODO: add MST specific link training routine
924-
*/
925-
if (stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST) {
918+
} else if (stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST) {
919+
/* MST doesn't perform link training for now
920+
* TODO: add MST specific link training routine
921+
*/
926922
decide_mst_link_settings(link, link_setting);
927923
} else if (link->connector_signal == SIGNAL_TYPE_EDP) {
928924
/* enable edp link optimization for DSC eDP case */

0 commit comments

Comments
 (0)