Browse Source

drm/imx: atomic phase 2 step 2: Track plane_state->fb correctly in ->page_flip

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>
Liu Ying 9 năm trước cách đây
mục cha
commit
ae2531ab70
1 tập tin đã thay đổi với 4 bổ sung0 xóa
  1. 4 0
      drivers/gpu/drm/imx/ipuv3-crtc.c

+ 4 - 0
drivers/gpu/drm/imx/ipuv3-crtc.c

@@ -18,6 +18,7 @@
 #include <linux/device.h>
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/platform_device.h>
 #include <drm/drmP.h>
 #include <drm/drmP.h>
+#include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc_helper.h>
 #include <drm/drm_crtc_helper.h>
 #include <linux/fb.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;
 		ipu_crtc->flip_state = IPU_FLIP_SUBMITTED;
 	}
 	}
 
 
+	if (crtc->primary->state)
+		drm_atomic_set_fb_for_plane(crtc->primary->state, fb);
+
 	return 0;
 	return 0;
 
 
 free_flip_work:
 free_flip_work: