OSDN Git Service

drm/amd/display: add DP2.0 debug option to set MST_EN for SST stream
authorWenjing Liu <wenjing.liu@amd.com>
Fri, 24 Sep 2021 20:12:34 +0000 (16:12 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Oct 2021 21:17:48 +0000 (17:17 -0400)
[why]
Some DP2.0 RX requires us to set MST_EN even for SST configuration.
We added this debug option so we can configure this temporary workaround
for the RX.

Reviewed-by: George Shen <george.shen@amd.com>
Acked-by: Agustin Gutierrez Sanchez <agustin.gutierrez@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>
drivers/gpu/drm/amd/display/dc/core/dc_link.c
drivers/gpu/drm/amd/display/dc/dc.h

index ca5dc3c..fa11a2b 100644 (file)
@@ -1869,8 +1869,13 @@ static enum dc_status enable_link_dp(struct dc_state *state,
                do_fallback = true;
 
 #if defined(CONFIG_DRM_AMD_DC_DCN)
+       /*
+        * Temporary w/a to get DP2.0 link rates to work with SST.
+        * TODO DP2.0 - Workaround: Remove w/a if and when the issue is resolved.
+        */
        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 &&
+                       link->dc->debug.set_mst_en_for_sst) {
                dp_enable_mst_on_sink(link, true);
        }
 #endif
index dd99590..254b760 100644 (file)
@@ -664,6 +664,7 @@ struct dc_debug_options {
 #if defined(CONFIG_DRM_AMD_DC_DCN)
        /* TODO - remove once tested */
        bool legacy_dp2_lt;
+       bool set_mst_en_for_sst;
 #endif
        union mem_low_power_enable_options enable_mem_low_power;
        union root_clock_optimization_options root_clock_optimization;