Retrieve the CRTC's new state with drm_atomic_get_new_crtc_state() in drm_sysfb_plane_helper_begin_fb_access(). The blit function might be incorrect otherwise.
Signed-off-by: Thomas Zimmermann <[email protected]> Fixes: cb71de092553 ("drm/sysfb: Lookup blit function during atomic check") Reported-by: Ville Syrjälä <[email protected]> Closes: https://lore.kernel.org/dri-devel/[email protected]/ Cc: Thomas Zimmermann <[email protected]> Cc: Javier Martinez Canillas <[email protected]> Cc: [email protected] --- drivers/gpu/drm/sysfb/drm_sysfb_modeset.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c b/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c index 8517c490e815..6214b7709b37 100644 --- a/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c +++ b/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c @@ -258,7 +258,7 @@ int drm_sysfb_plane_helper_begin_fb_access(struct drm_plane *plane, ret = -EINVAL; - crtc_state = drm_atomic_get_crtc_state(plane_state->state, plane_state->crtc); + crtc_state = drm_atomic_get_new_crtc_state(plane_state->state, plane_state->crtc); if (drm_WARN_ON_ONCE(dev, !crtc_state)) goto err_drm_gem_end_shadow_fb_access; sysfb_crtc_state = to_drm_sysfb_crtc_state(crtc_state); -- 2.51.0
