]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
drm/amd/display: Clear the CUR_ENABLE register on DCN20 on DPP5
authorIvan Lipski <ivan.lipski@amd.com>
Wed, 5 Nov 2025 20:27:42 +0000 (15:27 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 1 Dec 2025 10:45:48 +0000 (11:45 +0100)
commitaed494225be85b72212af229db549a082025ec72
treed2df628fcc1eb58df117029559641e66f705a1fc
parent18030e84cbda014787369b6d4cde8404fa2d08fc
drm/amd/display: Clear the CUR_ENABLE register on DCN20 on DPP5

commit 5bab4c89390f32b2f491f49a151948cd226dd909 upstream.

[Why]
On DCN20 & DCN30, the 6th DPP's & HUBP's are powered on permanently and
cannot be power gated. Thus, when dpp_reset() is invoked for the DPP5,
while it's still powered on, the cached cursor_state
(dpp_base->pos.cur0_ctl.bits.cur0_enable)
and the actual state (CUR0_ENABLE) bit are unsycned. This can cause a
double cursor in full screen with non-native scaling.

[How]
Force disable cursor on DPP5 on plane powerdown for ASICs w/ 6 DPPs/HUBPs.

Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4673
Reviewed-by: Aric Cyr <aric.cyr@amd.com>
Signed-off-by: Ivan Lipski <ivan.lipski@amd.com>
Tested-by: Dan Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 79b3c037f972dcb13e325a8eabfb8da835764e15)
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/amd/display/dc/hwss/dcn20/dcn20_hwseq.c