1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef __LINUX_MATROXFB_H__
3 #define __LINUX_MATROXFB_H__
4 
5 #include <asm/ioctl.h>
6 #include <linux/types.h>
7 #include <linux/videodev2.h>
8 #include <linux/fb.h>
9 
10 struct matroxioc_output_mode {
11 	__u32	output;		/* which output */
12 #define MATROXFB_OUTPUT_PRIMARY		0x0000
13 #define MATROXFB_OUTPUT_SECONDARY	0x0001
14 #define MATROXFB_OUTPUT_DFP		0x0002
15 	__u32	mode;		/* which mode */
16 #define MATROXFB_OUTPUT_MODE_PAL	0x0001
17 #define MATROXFB_OUTPUT_MODE_NTSC	0x0002
18 #define MATROXFB_OUTPUT_MODE_MONITOR	0x0080
19 };
20 #define MATROXFB_SET_OUTPUT_MODE	_IOW('n',0xFA,size_t)
21 #define MATROXFB_GET_OUTPUT_MODE	_IOWR('n',0xFA,size_t)
22 
23 /* bitfield */
24 #define MATROXFB_OUTPUT_CONN_PRIMARY	(1 << MATROXFB_OUTPUT_PRIMARY)
25 #define MATROXFB_OUTPUT_CONN_SECONDARY	(1 << MATROXFB_OUTPUT_SECONDARY)
26 #define MATROXFB_OUTPUT_CONN_DFP	(1 << MATROXFB_OUTPUT_DFP)
27 /* connect these outputs to this framebuffer */
28 #define MATROXFB_SET_OUTPUT_CONNECTION	_IOW('n',0xF8,size_t)
29 /* which outputs are connected to this framebuffer */
30 #define MATROXFB_GET_OUTPUT_CONNECTION	_IOR('n',0xF8,size_t)
31 /* which outputs are available for this framebuffer */
32 #define MATROXFB_GET_AVAILABLE_OUTPUTS	_IOR('n',0xF9,size_t)
33 /* which outputs exist on this framebuffer */
34 #define MATROXFB_GET_ALL_OUTPUTS	_IOR('n',0xFB,size_t)
35 
36 enum matroxfb_ctrl_id {
37   MATROXFB_CID_TESTOUT	 = V4L2_CID_PRIVATE_BASE,
38   MATROXFB_CID_DEFLICKER,
39   MATROXFB_CID_LAST
40 };
41 
42 #endif
43 
44