The msm 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: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com> Acked-by: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com> Reviewed-by: Ville Syrjälä <ville.syrj...@linux.intel.com> Signed-off-by: Maxime Ripard <mrip...@kernel.org> --- To: Rob Clark <robin.cl...@oss.qualcomm.com> To: Dmitry Baryshkov <lu...@kernel.org> Cc: Abhinav Kumar <abhinav.ku...@linux.dev> Cc: Jessica Zhang <jessica.zh...@oss.qualcomm.com> Cc: Sean Paul <s...@poorly.run> Cc: Marijn Suijten <marijn.suij...@somainline.org> Cc: linux-arm-...@vger.kernel.org Cc: dri-devel@lists.freedesktop.org Cc: freedr...@lists.freedesktop.org --- drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c index 7c790406d533fbabb330c438419efb18204cc4b7..4ca183fb61a95af60ef5a2c011ae6b2a0df963f0 100644 --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c @@ -334,12 +334,11 @@ static int mdp5_plane_atomic_check(struct drm_plane *plane, crtc = new_plane_state->crtc ? new_plane_state->crtc : old_plane_state->crtc; if (!crtc) 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; return mdp5_plane_atomic_check_with_state(crtc_state, new_plane_state); } @@ -371,12 +370,12 @@ static int mdp5_plane_atomic_async_check(struct drm_plane *plane, struct mdp5_plane_state *mdp5_state = to_mdp5_plane_state(new_plane_state); struct drm_crtc_state *crtc_state; int min_scale, max_scale; int ret; - 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); if (WARN_ON(!crtc_state)) return -EINVAL; if (!crtc_state->active) return -EINVAL; -- 2.50.1