Commit bad3a066 authored by Alvin Lee's avatar Alvin Lee Committed by Alex Deucher

drm/amd/display: Clear link res when merging a pipe split

[Description]
- When merging a pipe that was previously pipe split, we need
  to also clear the link resources or the next stream/plane that
  uses the pipe may have an incorrect link resource state
Reviewed-by: default avatarWenjing Liu <Wenjing.Liu@amd.com>
Reviewed-by: default avatarNevenko Stupar <Nevenko.Stupar@amd.com>
Acked-by: default avatarJasdeep Dhillon <jdhillon@amd.com>
Signed-off-by: default avatarAlvin Lee <Alvin.Lee2@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 669018a9
...@@ -1647,6 +1647,7 @@ bool dcn32_internal_validate_bw(struct dc *dc, ...@@ -1647,6 +1647,7 @@ bool dcn32_internal_validate_bw(struct dc *dc,
dcn20_release_dsc(&context->res_ctx, dc->res_pool, &pipe->stream_res.dsc); dcn20_release_dsc(&context->res_ctx, dc->res_pool, &pipe->stream_res.dsc);
memset(&pipe->plane_res, 0, sizeof(pipe->plane_res)); memset(&pipe->plane_res, 0, sizeof(pipe->plane_res));
memset(&pipe->stream_res, 0, sizeof(pipe->stream_res)); memset(&pipe->stream_res, 0, sizeof(pipe->stream_res));
memset(&pipe->link_res, 0, sizeof(pipe->link_res));
repopulate_pipes = true; repopulate_pipes = true;
} else if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) { } else if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) {
struct pipe_ctx *top_pipe = pipe->top_pipe; struct pipe_ctx *top_pipe = pipe->top_pipe;
...@@ -1662,6 +1663,7 @@ bool dcn32_internal_validate_bw(struct dc *dc, ...@@ -1662,6 +1663,7 @@ bool dcn32_internal_validate_bw(struct dc *dc,
pipe->stream = NULL; pipe->stream = NULL;
memset(&pipe->plane_res, 0, sizeof(pipe->plane_res)); memset(&pipe->plane_res, 0, sizeof(pipe->plane_res));
memset(&pipe->stream_res, 0, sizeof(pipe->stream_res)); memset(&pipe->stream_res, 0, sizeof(pipe->stream_res));
memset(&pipe->link_res, 0, sizeof(pipe->link_res));
repopulate_pipes = true; repopulate_pipes = true;
} else } else
ASSERT(0); /* Should never try to merge master pipe */ ASSERT(0); /* Should never try to merge master pipe */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment