1 #include <linux/videodev2.h>
6 static const struct ioctl videodev2_ioctls
[] = {
7 IOCTL(VIDIOC_QUERYCAP
),
8 IOCTL(VIDIOC_RESERVED
),
9 IOCTL(VIDIOC_ENUM_FMT
),
12 IOCTL(VIDIOC_REQBUFS
),
13 IOCTL(VIDIOC_QUERYBUF
),
16 IOCTL(VIDIOC_OVERLAY
),
22 IOCTL(VIDIOC_STREAMON
),
23 IOCTL(VIDIOC_STREAMOFF
),
28 IOCTL(VIDIOC_ENUMSTD
),
29 IOCTL(VIDIOC_ENUMINPUT
),
32 IOCTL(VIDIOC_G_TUNER
),
33 IOCTL(VIDIOC_S_TUNER
),
34 IOCTL(VIDIOC_G_AUDIO
),
35 IOCTL(VIDIOC_S_AUDIO
),
36 IOCTL(VIDIOC_QUERYCTRL
),
37 IOCTL(VIDIOC_QUERYMENU
),
38 IOCTL(VIDIOC_G_INPUT
),
39 IOCTL(VIDIOC_S_INPUT
),
40 IOCTL(VIDIOC_G_OUTPUT
),
41 IOCTL(VIDIOC_S_OUTPUT
),
42 IOCTL(VIDIOC_ENUMOUTPUT
),
43 IOCTL(VIDIOC_G_AUDOUT
),
44 IOCTL(VIDIOC_S_AUDOUT
),
45 IOCTL(VIDIOC_G_MODULATOR
),
46 IOCTL(VIDIOC_S_MODULATOR
),
47 IOCTL(VIDIOC_G_FREQUENCY
),
48 IOCTL(VIDIOC_S_FREQUENCY
),
49 IOCTL(VIDIOC_CROPCAP
),
52 IOCTL(VIDIOC_G_JPEGCOMP
),
53 IOCTL(VIDIOC_S_JPEGCOMP
),
54 IOCTL(VIDIOC_QUERYSTD
),
55 IOCTL(VIDIOC_TRY_FMT
),
56 IOCTL(VIDIOC_ENUMAUDIO
),
57 IOCTL(VIDIOC_ENUMAUDOUT
),
58 IOCTL(VIDIOC_G_PRIORITY
),
59 IOCTL(VIDIOC_S_PRIORITY
),
60 IOCTL(VIDIOC_G_SLICED_VBI_CAP
),
61 IOCTL(VIDIOC_LOG_STATUS
),
62 IOCTL(VIDIOC_G_EXT_CTRLS
),
63 IOCTL(VIDIOC_S_EXT_CTRLS
),
64 IOCTL(VIDIOC_TRY_EXT_CTRLS
),
65 IOCTL(VIDIOC_ENUM_FRAMESIZES
),
66 IOCTL(VIDIOC_ENUM_FRAMEINTERVALS
),
67 IOCTL(VIDIOC_G_ENC_INDEX
),
68 IOCTL(VIDIOC_ENCODER_CMD
),
69 IOCTL(VIDIOC_TRY_ENCODER_CMD
),
70 IOCTL(VIDIOC_DBG_S_REGISTER
),
71 IOCTL(VIDIOC_DBG_G_REGISTER
),
72 #ifdef VIDIOC_DBG_G_CHIP_IDENT
73 IOCTL(VIDIOC_DBG_G_CHIP_IDENT
),
75 IOCTL(VIDIOC_S_HW_FREQ_SEEK
),
76 #ifdef VIDIOC_ENUM_DV_PRESETS
77 IOCTL(VIDIOC_ENUM_DV_PRESETS
),
79 #ifdef VIDIOC_S_DV_PRESET
80 IOCTL(VIDIOC_S_DV_PRESET
),
82 #ifdef VIDIOC_G_DV_PRESET
83 IOCTL(VIDIOC_G_DV_PRESET
),
85 #ifdef VIDIOC_QUERY_DV_PRESET
86 IOCTL(VIDIOC_QUERY_DV_PRESET
),
88 #ifdef VIDIOC_S_DV_TIMINGS
89 IOCTL(VIDIOC_S_DV_TIMINGS
),
91 #ifdef VIDIOC_G_DV_TIMINGS
92 IOCTL(VIDIOC_G_DV_TIMINGS
),
95 IOCTL(VIDIOC_DQEVENT
),
97 #ifdef VIDIOC_SUBSCRIBE_EVENT
98 IOCTL(VIDIOC_SUBSCRIBE_EVENT
),
100 #ifdef VIDIOC_UNSUBSCRIBE_EVENT
101 IOCTL(VIDIOC_UNSUBSCRIBE_EVENT
),
103 #ifdef VIDIOC_CREATE_BUFS
104 IOCTL(VIDIOC_CREATE_BUFS
),
106 #ifdef VIDIOC_PREPARE_BUF
107 IOCTL(VIDIOC_PREPARE_BUF
),
109 #ifdef VIDIOC_G_SELECTION
110 IOCTL(VIDIOC_G_SELECTION
),
112 #ifdef VIDIOC_S_SELECTION
113 IOCTL(VIDIOC_S_SELECTION
),
115 #ifdef VIDIOC_DECODER_CMD
116 IOCTL(VIDIOC_DECODER_CMD
),
118 #ifdef VIDIOC_TRY_DECODER_CMD
119 IOCTL(VIDIOC_TRY_DECODER_CMD
),
121 #ifdef VIDIOC_ENUM_DV_TIMINGS
122 IOCTL(VIDIOC_ENUM_DV_TIMINGS
),
124 #ifdef VIDIOC_QUERY_DV_TIMINGS
125 IOCTL(VIDIOC_QUERY_DV_TIMINGS
),
127 #ifdef VIDIOC_DV_TIMINGS_CAP
128 IOCTL(VIDIOC_DV_TIMINGS_CAP
),
130 #ifdef VIDIOC_ENUM_FREQ_BANDS
131 IOCTL(VIDIOC_ENUM_FREQ_BANDS
),
135 static const char *const videodev2_devs
[] = {
139 static const struct ioctl_group videodev2_grp
= {
141 .devs
= videodev2_devs
,
142 .devs_cnt
= ARRAY_SIZE(videodev2_devs
),
143 .sanitise
= pick_random_ioctl
,
144 .ioctls
= videodev2_ioctls
,
145 .ioctls_cnt
= ARRAY_SIZE(videodev2_ioctls
),
148 REG_IOCTL_GROUP(videodev2_grp
)