From: Yongqiang Sun Date: Mon, 27 Mar 2017 13:59:38 +0000 (-0400) Subject: drm/amd/display: Fix MPO exit and cursor issue. X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=dabb3979e1cdfddbc9121116cfcf69f01991e51d;p=openwrt%2Fstaging%2Fblogic.git drm/amd/display: Fix MPO exit and cursor issue. Signed-off-by: Yongqiang Sun Acked-by: Harry Wentland Reviewed-by: Tony Cheng Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c index 512a53bdc32f..bf209f7bbf98 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c @@ -215,7 +215,7 @@ bool dc_stream_set_cursor_attributes( bool dc_stream_set_cursor_position( const struct dc_stream *dc_stream, - const struct dc_cursor_position *position) + struct dc_cursor_position *position) { int i; struct core_stream *stream; @@ -251,6 +251,9 @@ bool dc_stream_set_cursor_position( .h_scale_ratio = pipe_ctx->scl_data.ratios.horz, }; + if (pipe_ctx->top_pipe && pipe_ctx->surface != pipe_ctx->top_pipe->surface) + position->enable = false; + ipp->funcs->ipp_cursor_set_position(ipp, position, ¶m); ret = true; } diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h index b3d5b922aae4..0731045f6084 100644 --- a/drivers/gpu/drm/amd/display/dc/dc.h +++ b/drivers/gpu/drm/amd/display/dc/dc.h @@ -744,7 +744,7 @@ bool dc_stream_set_cursor_attributes( bool dc_stream_set_cursor_position( const struct dc_stream *stream, - const struct dc_cursor_position *position); + struct dc_cursor_position *position); /* Newer interfaces */ struct dc_cursor {