From: Jimmy Kizito <jimmy.kiz...@amd.com>

[why & how]
Add codes for commit "ede4f6dac99e drm/amd/display: Update
setting of DP training parameters." to support USB4 DP tunneling
feature

Reviewed-by: Jun Lei <jun....@amd.com>
Acked-by: Wayne Lin <wayne....@amd.com>
Acked-by: Nicholas Kazlauskas <nicholas.kazlaus...@amd.com>
Signed-off-by: Jimmy Kizito <jimmy.kiz...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 7 +++++++
 1 file changed, 7 insertions(+)

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 9bc5f49ea2ec..dd1d0262ba40 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
@@ -1777,6 +1777,13 @@ static enum dc_status 
configure_lttpr_mode_non_transparent(
 
                if (encoding == DP_8b_10b_ENCODING) {
                        repeater_cnt = 
dp_convert_to_count(link->dpcd_caps.lttpr_caps.phy_repeater_cnt);
+
+                       /* Driver does not need to train the first hop. Skip 
DPCD read and clear
+                        * AUX_RD_INTERVAL for DPTX-to-DPIA hop.
+                        */
+                       if (link->ep_type == DISPLAY_ENDPOINT_USB4_DPIA)
+                               
link->dpcd_caps.lttpr_caps.aux_rd_interval[--repeater_cnt] = 0;
+
                        for (repeater_id = repeater_cnt; repeater_id > 0; 
repeater_id--) {
                                aux_interval_address = 
DP_TRAINING_AUX_RD_INTERVAL_PHY_REPEATER1 +
                                                        
((DP_REPEATER_CONFIGURATION_AND_STATUS_SIZE) * (repeater_id - 1));
-- 
2.25.1

Reply via email to