]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/rockchip: Switch to drm_atomic_get_new_crtc_state()
authorMaxime Ripard <mripard@kernel.org>
Tue, 30 Sep 2025 10:59:42 +0000 (12:59 +0200)
committerMaxime Ripard <mripard@kernel.org>
Mon, 6 Oct 2025 11:59:17 +0000 (13:59 +0200)
The rockchip atomic_check implementation uses the deprecated
drm_atomic_get_existing_crtc_state() helper.

This hook is called as part of the global atomic_check, thus before the
states are swapped. The existing state thus points to the new state, and
we can use drm_atomic_get_new_crtc_state() instead.

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://lore.kernel.org/r/20250930-drm-no-more-existing-state-v5-27-eeb9e1287907@kernel.org
Signed-off-by: Maxime Ripard <mripard@kernel.org>
drivers/gpu/drm/rockchip/rockchip_drm_vop.c
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c

index ba6b0528d1e5a493cdef85dd1ea258e70c31ccd5..5369b77ea434c794ed7d509802fa29c39d2bfa7a 100644 (file)
@@ -826,8 +826,7 @@ static int vop_plane_atomic_check(struct drm_plane *plane,
        if (!crtc || WARN_ON(!fb))
                return 0;
 
-       crtc_state = drm_atomic_get_existing_crtc_state(state,
-                                                       crtc);
+       crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
        if (WARN_ON(!crtc_state))
                return -EINVAL;
 
@@ -1092,7 +1091,8 @@ static int vop_plane_atomic_async_check(struct drm_plane *plane,
        if (!plane->state->fb)
                return -EINVAL;
 
-       crtc_state = drm_atomic_get_existing_crtc_state(state, new_plane_state->crtc);
+       crtc_state = drm_atomic_get_new_crtc_state(state,
+                                                  new_plane_state->crtc);
 
        /* Special case for asynchronous cursor updates. */
        if (!crtc_state)
index b50927a824b4020a7ffd57974070ed202cd8b838..4556cf7a33641529c673b8d7842115dc739dede2 100644 (file)
@@ -1013,7 +1013,7 @@ static int vop2_plane_atomic_check(struct drm_plane *plane,
        vop2 = vp->vop2;
        vop2_data = vop2->data;
 
-       cstate = drm_atomic_get_existing_crtc_state(pstate->state, crtc);
+       cstate = drm_atomic_get_new_crtc_state(pstate->state, crtc);
        if (WARN_ON(!cstate))
                return -EINVAL;