[Why]
A porting error on a previous patch left the block of code that
causes the crash from a NULL pointer dereference.

More specifically, we try to access link_enc before it's assigned in
the USB4 case in the following assignment:

config.dio_output_idx = link_enc->transmitter - TRANSMITTER_UNIPHY_A;

[How]
That assignment occurs later depending on the ASIC version. It's only
needed on DCN31+ and only after link_enc is already assigned.

Fixes: 35b6fe499be7 ("drm/amd/display: fix a crash on USB4 over C20 PHY")
Cc: Rodrigo Siqueira <rodrigo.sique...@amd.com>
Cc: Harry Wentland <harry.wentl...@amd.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlaus...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/core/dc_link.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
index 3d75f56a939c..857941d83f1f 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
@@ -4009,12 +4009,9 @@ static void update_psp_stream_config(struct pipe_ctx 
*pipe_ctx, bool dpms_off)
                config.dig_be = pipe_ctx->stream->link->link_enc_hw_inst;
 #if defined(CONFIG_DRM_AMD_DC_DCN)
                config.stream_enc_idx = pipe_ctx->stream_res.stream_enc->id - 
ENGINE_ID_DIGA;
-               
+
                if (pipe_ctx->stream->link->ep_type == DISPLAY_ENDPOINT_PHY ||
                                pipe_ctx->stream->link->ep_type == 
DISPLAY_ENDPOINT_USB4_DPIA) {
-                       link_enc = pipe_ctx->stream->link->link_enc;
-                       config.dio_output_type = 
pipe_ctx->stream->link->ep_type;
-                       config.dio_output_idx = link_enc->transmitter - 
TRANSMITTER_UNIPHY_A;
                        if (pipe_ctx->stream->link->ep_type == 
DISPLAY_ENDPOINT_PHY)
                                link_enc = pipe_ctx->stream->link->link_enc;
                        else if (pipe_ctx->stream->link->ep_type == 
DISPLAY_ENDPOINT_USB4_DPIA)
-- 
2.25.1

Reply via email to