From 10ab4455cc32c7e79668cef47f24382320170fee Mon Sep 17 00:00:00 2001
From: "Shen, George" <George.Shen@amd.com>
Date: Fri, 28 Jan 2022 22:03:55 +0800
Subject: drm/amd/display: Add link enc null ptr check for cable ID (#2597)
Git-commit: 241a074fc1342b8f6a88af4b7bdc014692ebcde7
Patch-mainline: v5.18-rc1
References: jsc#PED-1166 jsc#PED-1168 jsc#PED-1170 jsc#PED-1218 jsc#PED-1220 jsc#PED-1222 jsc#PED-1223 jsc#PED-1225
[Why]
Certain configurations will result in link encoder
to not be assigned to the link at the time we apply
cable ID logic. We should skip it in those cases.
[How]
Check if link_enc is not null before applying
cable ID.
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Stylon Wang <stylon.wang@amd.com>
Signed-off-by: George Shen <george.shen@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Patrik Jakobsson <pjakobsson@suse.de>
---
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
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 1afd9e20fffc..27d7b340fe84 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
@@ -6347,7 +6347,12 @@ void dpcd_set_source_specific_data(struct dc_link *link)
void dpcd_update_cable_id(struct dc_link *link)
{
- if (!link->link_enc->features.flags.bits.IS_UHBR10_CAPABLE ||
+ struct link_encoder *link_enc = NULL;
+
+ link_enc = link_enc_cfg_get_link_enc(link);
+
+ if (!link_enc ||
+ !link_enc->features.flags.bits.IS_UHBR10_CAPABLE ||
link->dprx_status.cable_id_updated)
return;
--
2.38.1