xref: /openbmc/linux/drivers/gpu/drm/sti/sti_crtc.h (revision 5e2f97a9)
1e2842570SBenjamin Gaignard /* SPDX-License-Identifier: GPL-2.0 */
29e1f05b2SVincent Abriou /*
39e1f05b2SVincent Abriou  * Copyright (C) STMicroelectronics SA 2014
49e1f05b2SVincent Abriou  * Author: Benjamin Gaignard <benjamin.gaignard@st.com> for STMicroelectronics.
59e1f05b2SVincent Abriou  */
69e1f05b2SVincent Abriou 
79e1f05b2SVincent Abriou #ifndef _STI_CRTC_H_
89e1f05b2SVincent Abriou #define _STI_CRTC_H_
99e1f05b2SVincent Abriou 
105e2f97a9SSam Ravnborg struct drm_crtc;
115e2f97a9SSam Ravnborg struct drm_device;
125e2f97a9SSam Ravnborg struct drm_plane;
135e2f97a9SSam Ravnborg struct notifier_block;
149e1f05b2SVincent Abriou struct sti_mixer;
159e1f05b2SVincent Abriou 
169e1f05b2SVincent Abriou int sti_crtc_init(struct drm_device *drm_dev, struct sti_mixer *mixer,
179e1f05b2SVincent Abriou 		  struct drm_plane *primary, struct drm_plane *cursor);
1888e72717SThierry Reding int sti_crtc_enable_vblank(struct drm_device *dev, unsigned int pipe);
1988e72717SThierry Reding void sti_crtc_disable_vblank(struct drm_device *dev, unsigned int pipe);
209e1f05b2SVincent Abriou int sti_crtc_vblank_cb(struct notifier_block *nb,
219e1f05b2SVincent Abriou 		       unsigned long event, void *data);
229e1f05b2SVincent Abriou bool sti_crtc_is_main(struct drm_crtc *drm_crtc);
239e1f05b2SVincent Abriou 
249e1f05b2SVincent Abriou #endif
25