OSDN Git Service

drm/amd/display: power down eDP if eDP not present
authorPaul Hsieh <Paul.Hsieh@amd.com>
Tue, 7 Mar 2023 13:04:28 +0000 (21:04 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 22 Mar 2023 04:59:29 +0000 (00:59 -0400)
[Why]
When init, driver will power up eDP to check eDP
present or not. If eDP not present, driver doesn't
power off eDP VDD cause power consumption.

[How]
If eDP is not present when detection, power off eDP
VDD.

Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Paul Hsieh <Paul.Hsieh@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/link/link_detection.c

index 67added..a131e30 100644 (file)
@@ -1227,6 +1227,11 @@ bool link_detect_connection_type(struct dc_link *link, enum dc_connection_type *
                /* TODO: need to do the actual detection */
        } else {
                *type = dc_connection_none;
+               if (link->connector_signal == SIGNAL_TYPE_EDP) {
+                       /* eDP is not connected, power down it */
+                       if (!link->dc->config.edp_no_power_sequencing)
+                               link->dc->hwss.edp_power_control(link, false);
+               }
        }
 
        return true;