Skip to content

Commit b2e00dd

Browse files
committed
drm/i915: Use the AUX_IO power domain only for eDP/PSR port
Use the AUX_IO_A display power domain only for eDP on port A where PSR is also supported. This is the case where DC states need to be enabled while the output is enabled - ensured by AUX_IO_A domain not enabling the DC_OFF power well. Otherwise port A can be treated the same way as other ports with an external DP output: using the AUX_<port> domain which disables the unrequired DC states. This change prepares for the next patch enabling DC states on all ports supporting eDP/PSR besides port A. v2: - Check the encoder PSR capability instead of PSR being enabled in the crtc_state, as the latter can be changed with a fastset. Cc: Ville Syrjälä <[email protected]> Signed-off-by: Imre Deak <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent 5c30cfc commit b2e00dd

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

drivers/gpu/drm/i915/display/intel_ddi.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -862,8 +862,10 @@ intel_ddi_main_link_aux_domain(struct intel_digital_port *dig_port)
862862
* Note that PSR is enabled only on Port A even though this function
863863
* returns the correct domain for other ports too.
864864
*/
865-
return dig_port->aux_ch == AUX_CH_A ? POWER_DOMAIN_AUX_IO_A :
866-
intel_aux_power_domain(dig_port);
865+
if (dig_port->aux_ch == AUX_CH_A && intel_encoder_can_psr(&dig_port->base))
866+
return POWER_DOMAIN_AUX_IO_A;
867+
else
868+
return intel_aux_power_domain(dig_port);
867869
}
868870

869871
static void intel_ddi_get_power_domains(struct intel_encoder *encoder,

0 commit comments

Comments
 (0)