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. Signed-off-by: Maxime Ripard <mrip...@kernel.org> --- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 6 +++--- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index ba6b0528d1e5a493cdef85dd1ea258e70c31ccd5..5369b77ea434c794ed7d509802fa29c39d2bfa7a 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -824,12 +824,11 @@ static int vop_plane_atomic_check(struct drm_plane *plane, DRM_PLANE_NO_SCALING; 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; ret = drm_atomic_helper_check_plane_state(new_plane_state, crtc_state, min_scale, max_scale, @@ -1090,11 +1089,12 @@ static int vop_plane_atomic_async_check(struct drm_plane *plane, return -EINVAL; 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) crtc_state = plane->crtc->state; diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c index b50927a824b4020a7ffd57974070ed202cd8b838..4556cf7a33641529c673b8d7842115dc739dede2 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c @@ -1011,11 +1011,11 @@ static int vop2_plane_atomic_check(struct drm_plane *plane, vp = to_vop2_video_port(crtc); 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; ret = drm_atomic_helper_check_plane_state(pstate, cstate, min_scale, max_scale, -- 2.50.1