xref: /linux/drivers/gpu/drm/sun4i/sun4i_crtc.h (revision e58e871becec2d3b04ed91c0c16fe8deac9c9dfa)
1 /*
2  * Copyright (C) 2015 Free Electrons
3  * Copyright (C) 2015 NextThing Co
4  *
5  * Maxime Ripard <maxime.ripard@free-electrons.com>
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License as
9  * published by the Free Software Foundation; either version 2 of
10  * the License, or (at your option) any later version.
11  */
12 
13 #ifndef _SUN4I_CRTC_H_
14 #define _SUN4I_CRTC_H_
15 
16 struct sun4i_crtc {
17 	struct drm_crtc			crtc;
18 	struct drm_pending_vblank_event	*event;
19 
20 	struct sun4i_backend		*backend;
21 	struct sun4i_tcon		*tcon;
22 	struct sun4i_layer		**layers;
23 };
24 
25 static inline struct sun4i_crtc *drm_crtc_to_sun4i_crtc(struct drm_crtc *crtc)
26 {
27 	return container_of(crtc, struct sun4i_crtc, crtc);
28 }
29 
30 struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm,
31 				   struct sun4i_backend *backend,
32 				   struct sun4i_tcon *tcon);
33 
34 #endif /* _SUN4I_CRTC_H_ */
35