From: George Shen <[email protected]>

[Why]
The call to dp_enable_link_phy are using default/invalid values for clock id
and link settings.

[How]
Move workaround code to after its parameter variables are determined.

Signed-off-by: George Shen <[email protected]>
Reviewed-by: Tony Cheng <[email protected]>
Acked-by: Bhawanpreet Lakha <[email protected]>
---
 .../gpu/drm/amd/display/dc/core/dc_link_dp.c  | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
index cb731c1d30b1..8ff0f5b7104b 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
@@ -1892,6 +1892,16 @@ bool dp_verify_link_cap(
        /* disable PHY done possible by BIOS, will be done by driver itself */
        dp_disable_link_phy(link, link->connector_signal);
 
+       dp_cs_id = get_clock_source_id(link);
+
+       /* link training starts with the maximum common settings
+        * supported by both sink and ASIC.
+        */
+       initial_link_settings = get_common_supported_link_settings(
+                       *known_limit_link_setting,
+                       max_link_cap);
+       cur_link_setting = initial_link_settings;
+
        /* Temporary Renoir-specific workaround for SWDEV-215184;
         * PHY will sometimes be in bad state on hotplugging display from 
certain USB-C dongle,
         * so add extra cycle of enabling and disabling the PHY before first 
link training.
@@ -1902,15 +1912,6 @@ bool dp_verify_link_cap(
                dp_disable_link_phy(link, link->connector_signal);
        }
 
-       dp_cs_id = get_clock_source_id(link);
-
-       /* link training starts with the maximum common settings
-        * supported by both sink and ASIC.
-        */
-       initial_link_settings = get_common_supported_link_settings(
-                       *known_limit_link_setting,
-                       max_link_cap);
-       cur_link_setting = initial_link_settings;
        do {
                skip_video_pattern = true;
 
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to