[OEM5.14/J][SRU][PATCH v2 1/7] UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors

Mario Limonciello mario.limonciello at amd.com
Tue Aug 2 18:11:09 UTC 2022

BugLink: https://bugs.launchpad.net/bugs/1983143

commit 940e084d5e41 ("drm/amd/display: Fix dynamic link encoder
access.") was cherry-picked into OEM-5.14 and Jammy-5.15 kernels from
commit 64d283cb379e ("drm/amd/display: Fix dynamic link encoder access.").

When this was done there were conflicts noted, particularly because DP 2.0
SST support wasn't merged, which came as part of commit f01ee0195862
("drm/amd/display: Add DP 2.0 SST DC Support").

One of those conflicts caused DIG BE to not connect to FE which is a
dependency for TBT monitors to work when hotplugged into system.

Manually fixup the intent of the commit without actually adding DP 2.0
SST support.  This fixes the issue at hand with hotplugged Thunderbolt
monitors.  DP2.0 support landed in 5.16 and so this custom commit
is only needed for 5.14-oem and Jammy-5.15 kernels.

Signed-off-by: Mario Limonciello <mario.limonciello at amd.com>
 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c
index 3755ece055f4..0c19e315f60a 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c
@@ -2395,8 +2395,9 @@ void dcn20_enable_stream(struct pipe_ctx *pipe_ctx)
 	 * disconnect them during disable_stream
 	 * BY this, it is logic clean to separate stream and link
-	link->link_enc->funcs->connect_dig_be_to_fe(link->link_enc,
-						    pipe_ctx->stream_res.stream_enc->id, true);
+	if (link_enc)
+		link_enc->funcs->connect_dig_be_to_fe(
+			link_enc, pipe_ctx->stream_res.stream_enc->id, true);
 	if (dc_is_dp_signal(pipe_ctx->stream->signal))
 		dp_source_sequence_trace(link, DPCD_SOURCE_SEQ_AFTER_CONNECT_DIG_FE_BE);

More information about the kernel-team mailing list