drm/amd/display: Apply LTTPR workarounds to non-transparent mode
authorGeorge Shen <George.Shen@amd.com>
Sat, 20 Nov 2021 01:03:20 +0000 (20:03 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 7 Dec 2021 18:08:01 +0000 (13:08 -0500)
[Why]
Some of the vendor-specific workarounds added for transparent mode
also need to be applied to non-transparent mode in order to succeed
link training consistently.

[How]
Remove transparent mode check for the required workarounds.

Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Pavle Kotarac <Pavle.Kotarac@amd.com>
Signed-off-by: George Shen <George.Shen@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c

index 62510b643882754806dda1f329875788ea92b802..574a668333873c1a4ad8e35c022dc9df50ca8260 100644 (file)
@@ -620,10 +620,12 @@ enum dc_status dpcd_set_link_settings(
 #endif
                if (link->dc->debug.apply_vendor_specific_lttpr_wa &&
                                        (link->chip_caps & EXT_DISPLAY_PATH_CAPS__DP_FIXED_VS_EN) &&
-                                       link->lttpr_mode == LTTPR_MODE_TRANSPARENT) {
+                                       link->lttpr_mode == LTTPR_MODE_TRANSPARENT)
                        vendor_specific_lttpr_wa_one_start(link);
+
+               if (link->dc->debug.apply_vendor_specific_lttpr_wa &&
+                                       (link->chip_caps & EXT_DISPLAY_PATH_CAPS__DP_FIXED_VS_EN))
                        vendor_specific_lttpr_wa_one_two(link, rate);
-               }
 
                status = core_link_write_dpcd(link, DP_LINK_BW_SET, &rate, 1);
        }
@@ -1494,8 +1496,7 @@ static enum link_training_result perform_clock_recovery_sequence(
                        wait_time_microsec = TRAINING_AUX_RD_INTERVAL;
 
                if (link->dc->debug.apply_vendor_specific_lttpr_wa &&
-                               (link->chip_caps & EXT_DISPLAY_PATH_CAPS__DP_FIXED_VS_EN) &&
-                               link->lttpr_mode == LTTPR_MODE_TRANSPARENT) {
+                               (link->chip_caps & EXT_DISPLAY_PATH_CAPS__DP_FIXED_VS_EN)) {
                        wait_time_microsec = 16000;
                }