path: root/drivers/gpu/drm/imx/ipuv3-plane.h
diff options
authorLiu Ying <>2016-07-08 17:40:55 +0800
committerPhilipp Zabel <>2016-07-12 18:23:47 +0200
commit33f14235302f561b1db713c1bd8111a512bf2568 (patch)
tree43e804f6048be60ea3c7afc8c507c400a9619ed1 /drivers/gpu/drm/imx/ipuv3-plane.h
parentd7868cb7ac58640e9c0383205ba31bd6a985cc6f (diff)
drm/imx: atomic phase 1: Use transitional atomic CRTC and plane helpers
Use the drm_plane_helper_update/disable() and drm_helper_crtc_mode_set() transitional atomic helpers. The crtc->mode_set_nofb callback is added so that the primary plane is no longer tied to the CRTC. Check/update logics are separated to make sure crtc->mode_set_nofb and plane->atomic_update are always successful. Also, some necessary logics are tweaked for a smooth transition. Signed-off-by: Liu Ying <> Acked-by: Daniel Vetter <> Signed-off-by: Philipp Zabel <>
Diffstat (limited to 'drivers/gpu/drm/imx/ipuv3-plane.h')
1 files changed, 1 insertions, 15 deletions
diff --git a/drivers/gpu/drm/imx/ipuv3-plane.h b/drivers/gpu/drm/imx/ipuv3-plane.h
index 4448fd4ad4eb..c51a44ba3ddd 100644
--- a/drivers/gpu/drm/imx/ipuv3-plane.h
+++ b/drivers/gpu/drm/imx/ipuv3-plane.h
@@ -23,17 +23,6 @@ struct ipu_plane {
int dma;
int dp_flow;
- int x;
- int y;
- int w;
- int h;
- unsigned int u_offset;
- unsigned int v_offset;
- unsigned int stride[2];
- bool enabled;
struct ipu_plane *ipu_plane_init(struct drm_device *dev, struct ipu_soc *ipu,
@@ -48,10 +37,7 @@ int ipu_plane_mode_set(struct ipu_plane *plane, struct drm_crtc *crtc,
uint32_t src_x, uint32_t src_y, uint32_t src_w,
uint32_t src_h, bool interlaced);
-void ipu_plane_enable(struct ipu_plane *plane);
-void ipu_plane_disable(struct ipu_plane *plane);
-int ipu_plane_set_base(struct ipu_plane *plane, struct drm_framebuffer *fb,
- int x, int y);
+int ipu_plane_set_base(struct ipu_plane *plane, struct drm_framebuffer *fb);
int ipu_plane_get_resources(struct ipu_plane *plane);
void ipu_plane_put_resources(struct ipu_plane *plane);