drm/amd/display: Fix unbalanced locking in surface apply
also simplifying syntax and removing unused variable in dce110_apply_ctx_for_surface() Signed-off-by: Roman Li <Roman.Li@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
7f914a62c9
commit
2194e3ae90
|
@ -2849,22 +2849,19 @@ static void dce110_apply_ctx_for_surface(
|
||||||
int num_planes,
|
int num_planes,
|
||||||
struct dc_state *context)
|
struct dc_state *context)
|
||||||
{
|
{
|
||||||
int i, be_idx;
|
int i;
|
||||||
|
|
||||||
if (num_planes == 0)
|
if (num_planes == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
be_idx = -1;
|
|
||||||
for (i = 0; i < dc->res_pool->pipe_count; i++) {
|
for (i = 0; i < dc->res_pool->pipe_count; i++) {
|
||||||
struct pipe_ctx *pipe_ctx = &context->res_ctx.pipe_ctx[i];
|
struct pipe_ctx *pipe_ctx = &context->res_ctx.pipe_ctx[i];
|
||||||
struct pipe_ctx *old_pipe_ctx = &dc->current_state->res_ctx.pipe_ctx[i];
|
struct pipe_ctx *old_pipe_ctx = &dc->current_state->res_ctx.pipe_ctx[i];
|
||||||
|
|
||||||
if (stream == context->res_ctx.pipe_ctx[i].stream) {
|
if (stream == pipe_ctx->stream) {
|
||||||
be_idx = context->res_ctx.pipe_ctx[i].stream_res.tg->inst;
|
|
||||||
if (!pipe_ctx->top_pipe &&
|
if (!pipe_ctx->top_pipe &&
|
||||||
(pipe_ctx->plane_state || old_pipe_ctx->plane_state))
|
(pipe_ctx->plane_state || old_pipe_ctx->plane_state))
|
||||||
dc->hwss.pipe_control_lock(dc, pipe_ctx, true);
|
dc->hwss.pipe_control_lock(dc, pipe_ctx, true);
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue