summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/display/dc/core/dc.c
diff options
context:
space:
mode:
authorCharlene Liu <charlene.liu@amd.com>2024-01-11 14:40:28 -0500
committerAlex Deucher <alexander.deucher@amd.com>2024-01-22 17:13:27 -0500
commit8457bddc266c754af18f074373edf1ab764ea066 (patch)
treec67e4bf1ad43e2a7c03bc7667a0bd20992f6f6da /drivers/gpu/drm/amd/display/dc/core/dc.c
parent2a8e918f48bd089d06084ec4561da7e2fe5d434b (diff)
drm/amd/display: Revert "Rework DC Z10 restore"
This reverts commit e6f82bd44b401049367fcdee3328c7c720351419. It caused intermittent hangs when enabling IPS on static screen. Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Acked-by: Roman Li <roman.li@amd.com> Signed-off-by: Charlene Liu <charlene.liu@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/core/dc.c')
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index af83ec23f3a0..aa7c02ba948e 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -1836,8 +1836,8 @@ static enum dc_status dc_commit_state_no_check(struct dc *dc, struct dc_state *c
struct dc_state *old_state;
bool subvp_prev_use = false;
- dc_allow_idle_optimizations(dc, false);
dc_z10_restore(dc);
+ dc_allow_idle_optimizations(dc, false);
for (i = 0; i < dc->res_pool->pipe_count; i++) {
struct pipe_ctx *old_pipe = &dc->current_state->res_ctx.pipe_ctx[i];
@@ -3376,9 +3376,6 @@ static void commit_planes_for_stream_fast(struct dc *dc,
int i, j;
struct pipe_ctx *top_pipe_to_program = NULL;
struct dc_stream_status *stream_status = NULL;
- if (dc->caps.ips_support)
- dc_allow_idle_optimizations(dc, false);
-
dc_z10_restore(dc);
top_pipe_to_program = resource_get_otg_master_for_stream(
@@ -3506,9 +3503,6 @@ static void commit_planes_for_stream(struct dc *dc,
// dc->current_state anymore, so we have to cache it before we apply
// the new SubVP context
subvp_prev_use = false;
- if (dc->caps.ips_support)
- dc_allow_idle_optimizations(dc, false);
-
dc_z10_restore(dc);
if (update_type == UPDATE_TYPE_FULL)
wait_for_outstanding_hw_updates(dc, context);
@@ -4692,9 +4686,6 @@ void dc_set_power_state(
case DC_ACPI_CM_POWER_STATE_D0:
dc_state_construct(dc, dc->current_state);
- if (dc->caps.ips_support)
- dc_allow_idle_optimizations(dc, false);
-
dc_z10_restore(dc);
dc->hwss.init_hw(dc);