1 /* 2 * Copyright (C) STMicroelectronics SA 2014 3 * Author: Benjamin Gaignard <benjamin.gaignard@st.com> for STMicroelectronics. 4 * License terms: GNU General Public License (GPL), version 2 5 */ 6 7 #ifndef _STI_DRV_H_ 8 #define _STI_DRV_H_ 9 10 #include <drm/drmP.h> 11 12 struct sti_compositor; 13 struct sti_tvout; 14 15 /** 16 * STI drm private structure 17 * This structure is stored as private in the drm_device 18 * 19 * @compo: compositor 20 * @plane_zorder_property: z-order property for CRTC planes 21 * @drm_dev: drm device 22 */ 23 struct sti_private { 24 struct sti_compositor *compo; 25 struct drm_property *plane_zorder_property; 26 struct drm_device *drm_dev; 27 struct drm_fbdev_cma *fbdev; 28 29 struct { 30 struct drm_atomic_state *state; 31 struct work_struct work; 32 struct mutex lock; 33 } commit; 34 }; 35 36 extern struct platform_driver sti_tvout_driver; 37 extern struct platform_driver sti_vtac_driver; 38 extern struct platform_driver sti_hqvdp_driver; 39 extern struct platform_driver sti_hdmi_driver; 40 extern struct platform_driver sti_hda_driver; 41 extern struct platform_driver sti_dvo_driver; 42 extern struct platform_driver sti_vtg_driver; 43 extern struct platform_driver sti_compositor_driver; 44 45 #endif 46