drm/amd/display: Skip eDP detection when no sink
authorSaidireddy Yenugu <Saidireddy.Yenugu@amd.com>
Wed, 21 Jan 2026 13:27:25 +0000 (18:57 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 19 Feb 2026 17:16:11 +0000 (12:16 -0500)
[Why & How]
When there is no eDP panel connected and during
s0ix resume, unnecessary eDP power sequence and
HPD happening, resulting in ~2 seconds delay.

Fixed the issue by avoiding link detect for eDP
connection with no sink in dm_resume.

Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Saidireddy Yenugu <Saidireddy.Yenugu@amd.com>
Co-developed-by: ThummarDip Kishorbhai <ThummarDip.Kishorbhai@amd.com>
Signed-off-by: ThummarDip Kishorbhai <ThummarDip.Kishorbhai@amd.com>
Signed-off-by: Ray Wu <ray.wu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index 9a9f836..c3c045c 100644 (file)
@@ -3614,6 +3614,11 @@ static int dm_resume(struct amdgpu_ip_block *ip_block)
                if (aconnector->mst_root)
                        continue;
 
+               /* Skip eDP detection, when there is no sink present */
+               if (aconnector->dc_link->connector_signal == SIGNAL_TYPE_EDP &&
+                   !aconnector->dc_link->edp_sink_present)
+                       continue;
+
                guard(mutex)(&aconnector->hpd_lock);
                if (!dc_link_detect_connection_type(aconnector->dc_link, &new_connection_type))
                        drm_err(adev_to_drm(adev), "KMS: Failed to detect connector\n");