Re: [PATCH] drm/amd/display: Set native cursor mode for disabled CRTCs again
Ivan Lipski <[email protected]> Tue, 4 Aug 2026 16:05:11 -0400
| Newsgroups | org.freedesktop.lists.amd-gfx |
|---|---|
| Organization | AMD Inc. |
| Message-ID | <[email protected]> |
On 8/3/26 08:45, Timur Kristóf wrote: > It was regressed by a refactor. Let's fix it again. > > Always set native cursor mode when the CRTC is disabled, > to make sure it doesn't cause atomic commits to fail when > they are trying to disable the CRTC. Reviewed-by: Ivan Lipski <[email protected]> > > Fixes: 151164f96a4b ("drm/amd/display: add cursor module") > Cc: Alex Hung <[email protected]> > Signed-off-by: Timur Kristóf <[email protected]> > --- > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_cursor.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_cursor.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_cursor.c > index ab50d58896ab..d565433ea06d 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_cursor.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_cursor.c > @@ -290,15 +290,20 @@ int amdgpu_dm_crtc_get_cursor_mode(struct amdgpu_device *adev, > /* Overlay cursor not supported on HW before DCN > * DCN401/420 does not have the cursor-on-scaled-plane or cursor-on-yuv-plane restrictions > * as previous DCN generations, so enable native mode on DCN401/420 > + * > + * Always set native cursor mode when the CRTC is disabled, > + * to make sure it doesn't cause atomic commits to fail when > + * they are trying to disable the CRTC. > */ > if (amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(4, 0, 1) || > amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(4, 2, 0) || > #if defined(CONFIG_DRM_AMD_DC_DCN6_0) > amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(4, 2, 1) || > - amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(6, 0, 0)) { > + amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(6, 0, 0) || > #else > - amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(4, 2, 1)) { > + amdgpu_ip_version(adev, DCE_HWIP, 0) == IP_VERSION(4, 2, 1) || > #endif > + !dm_crtc_state->base.enable) { > *cursor_mode = DM_CURSOR_NATIVE_MODE; > return 0; > } -- Thanks, Ivan Lipski