xref: /linux/drivers/gpu/drm/sti/sti_vid.h (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1e2842570SBenjamin Gaignard /* SPDX-License-Identifier: GPL-2.0 */
2cfd8d744SBenjamin Gaignard /*
3cfd8d744SBenjamin Gaignard  * Copyright (C) STMicroelectronics SA 2014
4cfd8d744SBenjamin Gaignard  * Author: Fabien Dessenne <fabien.dessenne@st.com> for STMicroelectronics.
5cfd8d744SBenjamin Gaignard  */
6cfd8d744SBenjamin Gaignard 
7cfd8d744SBenjamin Gaignard #ifndef _STI_VID_H_
8cfd8d744SBenjamin Gaignard #define _STI_VID_H_
9cfd8d744SBenjamin Gaignard 
10871bcdfeSVincent Abriou /**
11871bcdfeSVincent Abriou  * STI VID structure
12871bcdfeSVincent Abriou  *
13871bcdfeSVincent Abriou  * @dev:   driver device
14871bcdfeSVincent Abriou  * @regs:  vid registers
15871bcdfeSVincent Abriou  * @id:    id of the vid
16871bcdfeSVincent Abriou  */
17871bcdfeSVincent Abriou struct sti_vid {
18871bcdfeSVincent Abriou 	struct device *dev;
19871bcdfeSVincent Abriou 	void __iomem *regs;
20871bcdfeSVincent Abriou 	int id;
21871bcdfeSVincent Abriou };
22871bcdfeSVincent Abriou 
2329d1dc62SVincent Abriou void sti_vid_commit(struct sti_vid *vid,
2429d1dc62SVincent Abriou 		    struct drm_plane_state *state);
2529d1dc62SVincent Abriou void sti_vid_disable(struct sti_vid *vid);
2690dffef5SVincent Abriou struct sti_vid *sti_vid_create(struct device *dev, struct drm_device *drm_dev,
2790dffef5SVincent Abriou 			       int id, void __iomem *baseaddr);
28cfd8d744SBenjamin Gaignard 
29*54ac836bSWambui Karuga void vid_debugfs_init(struct sti_vid *vid, struct drm_minor *minor);
3083af0a48SBenjamin Gaignard 
31cfd8d744SBenjamin Gaignard #endif
32