Commit 0d93e821 authored by Charlene Liu's avatar Charlene Liu Committed by Alex Deucher
Browse files

drm/amd/display: turn off eDP lcdvdd and backlight if not required



[why]
A+N configuration, eDP on A-APU is off, extended display active.
Resume from s4, eDP's backlight is still on.

[how]
Turn off inactive eDP backlight and lcdvdd.

Reviewed-by: default avatarCharlene Liu <charlene.liu@amd.com>
Reviewed-by: default avatarAric Cyr <aric.cyr@amd.com>
Signed-off-by: default avatarCharlene Liu <Charlene.Liu@amd.com>
Signed-off-by: default avatarJing Zhou <Jing.Zhou@amd.com>
Signed-off-by: default avatarRoman Li <roman.li@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 32be4e39
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -6298,10 +6298,10 @@ void dc_query_current_properties(struct dc *dc, struct dc_current_properties *pr
void dc_set_edp_power(const struct dc *dc, struct dc_link *edp_link,
				 bool powerOn)
{
	if (edp_link->connector_signal != SIGNAL_TYPE_EDP)
	if (!edp_link || !edp_link->dc || !edp_link->dc->link_srv)
		return;

	if (edp_link->skip_implict_edp_power_control == false)
	if (edp_link->connector_signal != SIGNAL_TYPE_EDP)
		return;

	edp_link->dc->link_srv->edp_set_panel_power(edp_link, powerOn);
+2 −0
Original line number Diff line number Diff line
@@ -393,6 +393,7 @@ void edp_set_panel_power(struct dc_link *link, bool powerOn)

		// 3. Rx power on
		dpcd_write_rx_power_ctrl(link, true);
		DC_LOG_BACKLIGHT("eDP power and backlight: Power on");
	} else {
		// 3. Rx power off
		dpcd_write_rx_power_ctrl(link, false);
@@ -404,6 +405,7 @@ void edp_set_panel_power(struct dc_link *link, bool powerOn)
		// 1. panel VDD off
		if (!link->dc->config.edp_no_power_sequencing)
			link->dc->hwss.edp_power_control(link, false);
		DC_LOG_BACKLIGHT("eDP power and backlight: Power off");
	}
}