mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-02-22 04:15:42 -05:00
Revert "drm/amd/display: Don't allow IPS2 in D0 for RCG Dynamic"
This reverts commit8488646966. In some test environments causes reporting failures for S0i3/S4. It shouldn't actually block entry provided there's no race with the last state being updated, but currently suspecting there's an IPS2 check that's no longer being met. Fixes:8488646966("drm/amd/display: Don't allow IPS2 in D0 for RCG Dynamic") Reviewed-by: Ovidiu Bunea <ovidiu.bunea@amd.com> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
1afb0e012e
commit
670bae1037
@@ -1313,8 +1313,7 @@ static void dc_dmub_srv_notify_idle(const struct dc *dc, bool allow_idle)
|
||||
new_signals.bits.allow_ips2 = 1;
|
||||
} else if (dc->config.disable_ips == DMUB_IPS_RCG_IN_ACTIVE_IPS2_IN_OFF) {
|
||||
/* TODO: Move this logic out to hwseq */
|
||||
if (dc_dmub_srv->last_power_state == DC_ACPI_CM_POWER_STATE_D3 &&
|
||||
count_active_streams(dc) == 0) {
|
||||
if (count_active_streams(dc) == 0) {
|
||||
/* IPS2 - Display off */
|
||||
new_signals.bits.allow_pg = 1;
|
||||
new_signals.bits.allow_ips1 = 1;
|
||||
@@ -1518,8 +1517,6 @@ void dc_dmub_srv_notify_fw_dc_power_state(struct dc_dmub_srv *dc_dmub_srv,
|
||||
}
|
||||
|
||||
dc_wake_and_execute_dmub_cmd(dc_dmub_srv->ctx, &cmd, DM_DMUB_WAIT_TYPE_WAIT);
|
||||
|
||||
dc_dmub_srv->last_power_state = power_state;
|
||||
}
|
||||
|
||||
bool dc_dmub_srv_should_detect(struct dc_dmub_srv *dc_dmub_srv)
|
||||
|
||||
@@ -56,7 +56,6 @@ struct dc_dmub_srv {
|
||||
union dmub_shared_state_ips_driver_signals driver_signals;
|
||||
bool idle_allowed;
|
||||
bool needs_idle_wake;
|
||||
enum dc_acpi_cm_power_state last_power_state;
|
||||
};
|
||||
|
||||
void dc_dmub_srv_wait_idle(struct dc_dmub_srv *dc_dmub_srv);
|
||||
|
||||
Reference in New Issue
Block a user