summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Cheng <tony.cheng@amd.com>2017-11-07 23:37:49 -0500
committerAlex Deucher <alexander.deucher@amd.com>2017-12-06 12:47:42 -0500
commit949785b5d113af61d40999b2841d1a99de6f9075 (patch)
tree56040a33bd09128fb6cb4d30d71d741ee6a13ce8
parent19ec320e82c63a44d8d61752e139351be18928ba (diff)
drm/amd/display: fix plane update prior to stream enablement
plane update prior to stream enablement is there to recombine pipe in case we need free pipe for new display. need to pass in new state or we will just re-applyingwhat we already have Signed-off-by: Tony Cheng <tony.cheng@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>
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index 34e678f30328..03d8cea7400a 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -887,12 +887,14 @@ static enum dc_status dc_commit_state_no_check(struct dc *dc, struct dc_state *c
if (!dcb->funcs->is_accelerated_mode(dcb))
dc->hwss.enable_accelerated_mode(dc);
- /* Combine planes if required, in case of pipe split disable */
+ /* re-program planes for existing stream, in case we need to
+ * free up plane resource for later use
+ */
for (i = 0; i < dc->current_state->stream_count; i++) {
dc->hwss.apply_ctx_for_surface(
dc, dc->current_state->streams[i],
dc->current_state->stream_status[i].plane_count,
- dc->current_state);
+ context); /* use new pipe config in new context */
}
/* Program hardware */