summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/zte/zx_vou.h
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2016-12-29 08:03:03 +0800
committerShawn Guo <shawn.guo@linaro.org>2017-01-28 10:17:40 +0800
commit7254b1f91ebc221ef71f7b23129a2ec0558e50cb (patch)
treef362a64318e12f572d9cae3122e5857eeb372660 /drivers/gpu/drm/zte/zx_vou.h
parent98ae9869d187ab737b5b231e7879d15e1e9a763d (diff)
downloadlinux-7254b1f91ebc221ef71f7b23129a2ec0558e50cb.tar.bz2
drm: zte: add .atomic_disable hook to disable graphic layer
There are a few hardware bits for each graphic layer to control main/aux channel and clock selection, as well as the layer enabling. These bits sit outside the layer block itself, but in VOU control glue block. We currently set these bits up at CRTC initialization for once, and do not support disabling the layer. This patch creates a pair of functions zx_vou_layer_enable[disable] to be invoked from plane hooks .atomic_update and .atomic_disable to set up and tear down the layer. This is generic for both graphic and video layers, so it will make the overlay plane support to be added later much easier. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Reviewed-by: Sean Paul <seanpaul@chromium.org>
Diffstat (limited to 'drivers/gpu/drm/zte/zx_vou.h')
-rw-r--r--drivers/gpu/drm/zte/zx_vou.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/zte/zx_vou.h b/drivers/gpu/drm/zte/zx_vou.h
index e571b888a3ca..ace00ce318e5 100644
--- a/drivers/gpu/drm/zte/zx_vou.h
+++ b/drivers/gpu/drm/zte/zx_vou.h
@@ -53,4 +53,7 @@ void vou_inf_disable(const struct vou_inf *inf, struct drm_crtc *crtc);
int zx_vou_enable_vblank(struct drm_device *drm, unsigned int pipe);
void zx_vou_disable_vblank(struct drm_device *drm, unsigned int pipe);
+void zx_vou_layer_enable(struct drm_plane *plane);
+void zx_vou_layer_disable(struct drm_plane *plane);
+
#endif /* __ZX_VOU_H__ */