Commit edfb2693 authored by Jimmy Kizito's avatar Jimmy Kizito Committed by Alex Deucher

drm/amd/display: Train DPIA links with fallback

[Why & How]
Conventional links are trained with fallback during sink detection.
Have DPIA links trained with fallback too.
Reviewed-by: default avatarJun Lei <Jun.Lei@amd.com>
Acked-by: default avatarWayne Lin <Wayne.Lin@amd.com>
Acked-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Acked-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarJimmy Kizito <Jimmy.Kizito@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 31cf79f0
...@@ -1862,6 +1862,12 @@ static enum dc_status enable_link_dp(struct dc_state *state, ...@@ -1862,6 +1862,12 @@ static enum dc_status enable_link_dp(struct dc_state *state,
/* get link settings for video mode timing */ /* get link settings for video mode timing */
decide_link_settings(stream, &link_settings); decide_link_settings(stream, &link_settings);
/* Train with fallback when enabling DPIA link. Conventional links are
* trained with fallback during sink detection.
*/
if (link->ep_type == DISPLAY_ENDPOINT_USB4_DPIA)
do_fallback = true;
#if defined(CONFIG_DRM_AMD_DC_DCN) #if defined(CONFIG_DRM_AMD_DC_DCN)
if (dp_get_link_encoding_format(&link_settings) == DP_128b_132b_ENCODING && if (dp_get_link_encoding_format(&link_settings) == DP_128b_132b_ENCODING &&
pipe_ctx->stream->signal == SIGNAL_TYPE_DISPLAY_PORT) { pipe_ctx->stream->signal == SIGNAL_TYPE_DISPLAY_PORT) {
......
...@@ -2406,9 +2406,9 @@ bool perform_link_training_with_retries( ...@@ -2406,9 +2406,9 @@ bool perform_link_training_with_retries(
dc_link_dp_perform_link_training_skip_aux(link, &current_setting); dc_link_dp_perform_link_training_skip_aux(link, &current_setting);
return true; return true;
} else { } else {
if (link->is_dig_mapping_flexible) if (link->ep_type == DISPLAY_ENDPOINT_USB4_DPIA)
status = dc_link_dpia_perform_link_training(link, status = dc_link_dpia_perform_link_training(link,
link_setting, &current_setting,
skip_video_pattern); skip_video_pattern);
else else
status = dc_link_dp_perform_link_training(link, status = dc_link_dp_perform_link_training(link,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment