drm/amd/display: Fix error in dmesg at boot
authorLeo (Hanghong) Ma <hanghong.ma@amd.com>
Fri, 1 Oct 2021 14:36:20 +0000 (22:36 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 6 Oct 2021 19:50:33 +0000 (15:50 -0400)
[Why]
During DQE's promotion test, error appears in dmesg at boot
on dcn3.1;

[How]
Add NULL pointor check for the pointor to the amdgpu_dm_connector;

Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>
Acked-by: Solomon Chiu <solomon.chiu@amd.com>
Signed-off-by: Leo (Hanghong) Ma <hanghong.ma@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link.c

index 81bf1e5a64c8afa86a6b4cfb73f7e72a04ec15d1..64b9c493dce2578557d48093a98c4d68372501a7 100644 (file)
@@ -1917,7 +1917,7 @@ void blank_all_dp_displays(struct dc *dc, bool hw_init)
 
                if ((signal == SIGNAL_TYPE_EDP) ||
                        (signal == SIGNAL_TYPE_DISPLAY_PORT)) {
-                       if (hw_init && signal != SIGNAL_TYPE_EDP) {
+                       if (hw_init && signal != SIGNAL_TYPE_EDP && dc->links[i]->priv != NULL) {
                                /* DP 2.0 spec requires that we read LTTPR caps first */
                                dp_retrieve_lttpr_cap(dc->links[i]);
                                /* if any of the displays are lit up turn them off */
@@ -1943,7 +1943,7 @@ void blank_all_dp_displays(struct dc *dc, bool hw_init)
                                }
 
                                if (!dc->links[i]->wa_flags.dp_keep_receiver_powered ||
-                                       (hw_init && signal != SIGNAL_TYPE_EDP))
+                                       (hw_init && signal != SIGNAL_TYPE_EDP && dc->links[i]->priv != NULL))
                                        dp_receiver_power_ctrl(dc->links[i], false);
                        }
                }