drm/amd/display: fix plane update prior to stream enablement
authorTony Cheng <tony.cheng@amd.com>
Wed, 8 Nov 2017 04:37:49 +0000 (23:37 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 6 Dec 2017 17:47:42 +0000 (12:47 -0500)
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>
drivers/gpu/drm/amd/display/dc/core/dc.c

index 34e678f..03d8cea 100644 (file)
@@ -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 */