From a5eeb70de411ef8b1cf5d97806ed6769b84be872 Mon Sep 17 00:00:00 2001 From: Rodrigo Siqueira Date: Fri, 17 Jun 2022 14:09:13 -0400 Subject: [PATCH] drm/amd/display: Add SubVP control lock Signed-off-by: Rodrigo Siqueira Tested-by: Daniel Wheeler Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/display/dc/core/dc.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c index db02f071c9490..05c2e178ca997 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc.c @@ -3201,15 +3201,19 @@ static void commit_planes_for_stream(struct dc *dc, } -#ifdef CONFIG_DRM_AMD_DC_DCN if (update_type != UPDATE_TYPE_FAST) if (dc->hwss.commit_subvp_config) dc->hwss.commit_subvp_config(dc, context); -#endif - if (should_lock_all_pipes && dc->hwss.interdependent_update_lock) + + if (should_lock_all_pipes && dc->hwss.interdependent_update_lock) { dc->hwss.interdependent_update_lock(dc, context, false); - else + if (dc->hwss.subvp_pipe_control_lock) + dc->hwss.subvp_pipe_control_lock(dc, context, false, should_lock_all_pipes, NULL, subvp_prev_use); + } else { dc->hwss.pipe_control_lock(dc, top_pipe_to_program, false); + if (dc->hwss.subvp_pipe_control_lock) + dc->hwss.subvp_pipe_control_lock(dc, context, false, should_lock_all_pipes, top_pipe_to_program, subvp_prev_use); + } if ((update_type != UPDATE_TYPE_FAST) && stream->update_flags.bits.dsc_changed) if (top_pipe_to_program->stream_res.tg->funcs->lock_doublebuffer_enable) { -- 2.30.2