From: Robin Chen Date: Mon, 8 Aug 2022 02:56:17 +0000 (+0800) Subject: drm/amd/display: Cursor flicker when entering PSRSU X-Git-Tag: v6.1-rc1~159^2~15^2~134 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=28c042707bf23436d4fa3ecc1eab1a62dd1f6d7d;p=thirdparty%2Flinux.git drm/amd/display: Cursor flicker when entering PSRSU [Why] The DAL driver may transmit the wrong cursor position to PSRSU DMUB driver when there are multiple planes. [How] Currently the driver apply the HW cursor on the top plane. So we should only transmit the cursor position on the top plane to PSRSU DMUB driver. Reviewed-by: Anthony Koo Acked-by: Brian Chang Signed-off-by: Robin Chen Tested-by: Daniel Wheeler Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c index 5b5d952b2b8cd..37246e965457c 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c @@ -3340,6 +3340,9 @@ static bool dcn10_dmub_should_update_cursor_data( if (pipe_ctx->plane_state->address.type == PLN_ADDR_TYPE_VIDEO_PROGRESSIVE) return false; + if (dcn10_can_pipe_disable_cursor(pipe_ctx)) + return false; + if (pipe_ctx->stream->link->psr_settings.psr_version == DC_PSR_VERSION_SU_1) return true;