drm/imx: atomic phase 2 step 2: Track plane_state->fb correctly in ->page_flip
authorLiu Ying <gnuiyl@gmail.com>
Fri, 8 Jul 2016 09:40:57 +0000 (17:40 +0800)
committerPhilipp Zabel <p.zabel@pengutronix.de>
Tue, 12 Jul 2016 16:23:55 +0000 (18:23 +0200)
Use drm_atomic_set_fb_for_plane() in the legacy ->page_flip path to track
the pointer plane_state->fb correctly.

Signed-off-by: Liu Ying <gnuiyl@gmail.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
drivers/gpu/drm/imx/ipuv3-crtc.c

index 8a0ef13c090684bb854537d67da7140cf80c8442..7df51e81d895a57cb6e8f1acb7c58bd63011c6f2 100644 (file)
@@ -18,6 +18,7 @@
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <drm/drmP.h>
+#include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc_helper.h>
 #include <linux/fb.h>
@@ -217,6 +218,9 @@ static int ipu_page_flip(struct drm_crtc *crtc,
                ipu_crtc->flip_state = IPU_FLIP_SUBMITTED;
        }
 
+       if (crtc->primary->state)
+               drm_atomic_set_fb_for_plane(crtc->primary->state, fb);
+
        return 0;
 
 free_flip_work: