drm/amd/display: Check cursor address before program.
authorYongqiang Sun <yongqiang.sun@amd.com>
Tue, 17 Oct 2017 18:54:58 +0000 (14:54 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 4 Dec 2017 21:33:20 +0000 (16:33 -0500)
Program cursor attributes during set mode is only needed
in case of pipe slipt, bottom pipe should be programmed
same as top pipe. Need to program if address is 0.

Signed-off-by: Yongqiang Sun <yongqiang.sun@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/dcn10/dcn10_hw_sequencer.c

index ac731c4..b477a65 100644 (file)
@@ -2436,7 +2436,8 @@ static void program_all_pipe_in_tree(
                /* TODO: this is a hack w/a for switching from mpo to pipe split */
                dc_stream_set_cursor_position(pipe_ctx->stream, &position);
 
-               dc_stream_set_cursor_attributes(pipe_ctx->stream,
+               if (pipe_ctx->stream->cursor_attributes.address.quad_part != 0)
+                       dc_stream_set_cursor_attributes(pipe_ctx->stream,
                                &pipe_ctx->stream->cursor_attributes);
 
                if (cur_pipe_ctx->plane_state != pipe_ctx->plane_state) {