]>
Commit | Line | Data |
---|---|---|
31e31b8a FB |
1 | /* emulated ioctl list */ |
2 | ||
3 | IOCTL(TCGETS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_termios))) | |
9de5e440 | 4 | IOCTL(TCSETS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios))) |
31e31b8a FB |
5 | IOCTL(TCSETSF, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios))) |
6 | IOCTL(TCSETSW, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios))) | |
7 | IOCTL(TIOCGWINSZ, IOC_R, MK_PTR(MK_STRUCT(STRUCT_winsize))) | |
8 | IOCTL(TIOCSWINSZ, IOC_W, MK_PTR(MK_STRUCT(STRUCT_winsize))) | |
9 | IOCTL(FIONREAD, IOC_R, MK_PTR(TYPE_INT)) | |
10 | IOCTL(TCGETA, IOC_R, MK_PTR(TYPE_INT)) | |
11 | IOCTL(TCSETA, IOC_W, MK_PTR(TYPE_INT)) | |
12 | IOCTL(TCSETAW, IOC_W, MK_PTR(TYPE_INT)) | |
13 | IOCTL(TCSETAF, IOC_W, MK_PTR(TYPE_INT)) | |
14 | IOCTL(TCSBRK, 0, TYPE_INT) | |
15 | IOCTL(TCSBRKP, 0, TYPE_INT) | |
16 | IOCTL(TCXONC, 0, TYPE_INT) | |
17 | IOCTL(TCFLSH, 0, TYPE_INT) | |
18 | IOCTL(TIOCEXCL, 0, TYPE_NULL) | |
19 | IOCTL(TIOCNXCL, 0, TYPE_NULL) | |
20 | IOCTL(TIOCSCTTY, 0, TYPE_INT) | |
21 | IOCTL(TIOCGPGRP, IOC_R, MK_PTR(TYPE_INT)) | |
22 | IOCTL(TIOCSPGRP, IOC_W, MK_PTR(TYPE_INT)) | |
bd00c74c | 23 | IOCTL(TIOCGSID, IOC_W, MK_PTR(TYPE_INT)) |
31e31b8a FB |
24 | IOCTL(TIOCOUTQ, IOC_R, MK_PTR(TYPE_INT)) |
25 | IOCTL(TIOCSTI, IOC_W, MK_PTR(TYPE_INT)) | |
26 | IOCTL(TIOCMGET, IOC_R, MK_PTR(TYPE_INT)) | |
27 | IOCTL(TIOCMBIS, IOC_W, MK_PTR(TYPE_INT)) | |
28 | IOCTL(TIOCMBIC, IOC_W, MK_PTR(TYPE_INT)) | |
29 | IOCTL(TIOCMSET, IOC_W, MK_PTR(TYPE_INT)) | |
30 | IOCTL(TIOCGSOFTCAR, IOC_R, MK_PTR(TYPE_INT)) | |
31 | IOCTL(TIOCSSOFTCAR, IOC_W, MK_PTR(TYPE_INT)) | |
32 | IOCTL(TIOCLINUX, IOC_R | IOC_W, MK_PTR(TYPE_INT)) | |
33 | IOCTL(TIOCCONS, 0, TYPE_NULL) | |
34 | IOCTL(TIOCGSERIAL, IOC_R, MK_PTR(TYPE_INT)) | |
35 | IOCTL(TIOCSSERIAL, IOC_W, MK_PTR(TYPE_INT)) | |
36 | IOCTL(TIOCPKT, IOC_W, MK_PTR(TYPE_INT)) | |
37 | IOCTL(FIONBIO, IOC_W, MK_PTR(TYPE_INT)) | |
38 | IOCTL(TIOCNOTTY, 0, TYPE_NULL) | |
39 | IOCTL(TIOCGETD, IOC_R, MK_PTR(TYPE_INT)) | |
40 | IOCTL(TIOCSETD, IOC_W, MK_PTR(TYPE_INT)) | |
f29042b5 FB |
41 | IOCTL(TIOCGPTN, IOC_R, MK_PTR(TYPE_INT)) |
42 | IOCTL(TIOCSPTLCK, IOC_W, MK_PTR(TYPE_INT)) | |
2b74f621 AS |
43 | #ifdef TIOCGPTPEER |
44 | IOCTL_SPECIAL(TIOCGPTPEER, 0, do_ioctl_tiocgptpeer, TYPE_INT) | |
45 | #endif | |
31e31b8a FB |
46 | IOCTL(FIOCLEX, 0, TYPE_NULL) |
47 | IOCTL(FIONCLEX, 0, TYPE_NULL) | |
48 | IOCTL(FIOASYNC, IOC_W, MK_PTR(TYPE_INT)) | |
49 | IOCTL(TIOCGLCKTRMIOS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_termios))) | |
50 | IOCTL(TIOCSLCKTRMIOS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios))) | |
51 | IOCTL(TIOCSERCONFIG, 0, TYPE_NULL) | |
52 | IOCTL(TIOCSERGETLSR, IOC_R, MK_PTR(TYPE_INT)) | |
53 | IOCTL(TIOCSERGETMULTI, IOC_R, MK_PTR(MK_STRUCT(STRUCT_serial_multiport_struct))) | |
54 | IOCTL(TIOCSERSETMULTI, IOC_W, MK_PTR(MK_STRUCT(STRUCT_serial_multiport_struct))) | |
55 | IOCTL(TIOCMIWAIT, 0, TYPE_INT) | |
56 | IOCTL(TIOCGICOUNT, IOC_R, MK_PTR(MK_STRUCT(STRUCT_serial_icounter_struct))) | |
57 | ||
0221cfcd FB |
58 | IOCTL(KIOCSOUND, 0, TYPE_INT) |
59 | IOCTL(KDMKTONE, 0, TYPE_INT) | |
f7680a55 | 60 | IOCTL(KDSETMODE, 0, TYPE_INT) |
0221cfcd | 61 | IOCTL(KDGKBTYPE, IOC_R, MK_PTR(TYPE_CHAR)) |
f7680a55 UH |
62 | IOCTL(KDGKBMODE, IOC_R, MK_PTR(TYPE_INT)) |
63 | IOCTL(KDSKBMODE, 0, TYPE_INT) | |
0221cfcd | 64 | IOCTL(KDGKBENT, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_kbentry))) |
53a5960a | 65 | IOCTL(KDGKBSENT, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_kbsentry))) |
e6fe18fb CV |
66 | IOCTL(KDGKBLED, 0, TYPE_INT) |
67 | IOCTL(KDSKBLED, 0, TYPE_INT) | |
68 | IOCTL(KDGETLED, 0, TYPE_INT) | |
69 | IOCTL(KDSETLED, 0, TYPE_INT) | |
ca56f5b5 | 70 | IOCTL_SPECIAL(KDSIGACCEPT, 0, do_ioctl_kdsigaccept, TYPE_INT) |
8e5a0667 | 71 | |
68365f96 FB |
72 | IOCTL(RTC_AIE_ON, 0, TYPE_NULL) |
73 | IOCTL(RTC_AIE_OFF, 0, TYPE_NULL) | |
74 | IOCTL(RTC_UIE_ON, 0, TYPE_NULL) | |
75 | IOCTL(RTC_UIE_OFF, 0, TYPE_NULL) | |
76 | IOCTL(RTC_PIE_ON, 0, TYPE_NULL) | |
77 | IOCTL(RTC_PIE_OFF, 0, TYPE_NULL) | |
78 | IOCTL(RTC_WIE_ON, 0, TYPE_NULL) | |
79 | IOCTL(RTC_WIE_OFF, 0, TYPE_NULL) | |
178b14a0 FB |
80 | IOCTL(RTC_ALM_READ, IOC_R, MK_PTR(MK_STRUCT(STRUCT_rtc_time))) |
81 | IOCTL(RTC_ALM_SET, IOC_W, MK_PTR(MK_STRUCT(STRUCT_rtc_time))) | |
82 | IOCTL(RTC_RD_TIME, IOC_R, MK_PTR(MK_STRUCT(STRUCT_rtc_time))) | |
83 | IOCTL(RTC_SET_TIME, IOC_W, MK_PTR(MK_STRUCT(STRUCT_rtc_time))) | |
fa857eb5 FB |
84 | IOCTL(RTC_IRQP_READ, IOC_R, MK_PTR(TYPE_ULONG)) |
85 | IOCTL(RTC_IRQP_SET, IOC_W, TYPE_ULONG) | |
86 | IOCTL(RTC_EPOCH_READ, IOC_R, MK_PTR(TYPE_ULONG)) | |
87 | IOCTL(RTC_EPOCH_SET, IOC_W, TYPE_ULONG) | |
abc81bf6 FB |
88 | IOCTL(RTC_WKALM_RD, IOC_R, MK_PTR(MK_STRUCT(STRUCT_rtc_wkalrm))) |
89 | IOCTL(RTC_WKALM_SET, IOC_W, MK_PTR(MK_STRUCT(STRUCT_rtc_wkalrm))) | |
373b067f FB |
90 | IOCTL(RTC_PLL_GET, IOC_R, MK_PTR(MK_STRUCT(STRUCT_rtc_pll_info))) |
91 | IOCTL(RTC_PLL_SET, IOC_W, MK_PTR(MK_STRUCT(STRUCT_rtc_pll_info))) | |
a7b09746 FB |
92 | IOCTL(RTC_VL_READ, IOC_R, MK_PTR(TYPE_INT)) |
93 | IOCTL(RTC_VL_CLR, 0, TYPE_NULL) | |
68365f96 | 94 | |
31e31b8a FB |
95 | IOCTL(BLKROSET, IOC_W, MK_PTR(TYPE_INT)) |
96 | IOCTL(BLKROGET, IOC_R, MK_PTR(TYPE_INT)) | |
97 | IOCTL(BLKRRPART, 0, TYPE_NULL) | |
98 | IOCTL(BLKGETSIZE, IOC_R, MK_PTR(TYPE_ULONG)) | |
99 | #ifdef BLKGETSIZE64 | |
100 | IOCTL(BLKGETSIZE64, IOC_R, MK_PTR(TYPE_ULONGLONG)) | |
101 | #endif | |
102 | IOCTL(BLKFLSBUF, 0, TYPE_NULL) | |
103 | IOCTL(BLKRASET, 0, TYPE_INT) | |
104 | IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG)) | |
a4a2c51f | 105 | IOCTL(BLKSSZGET, IOC_R, MK_PTR(TYPE_INT)) |
354a0008 | 106 | IOCTL(BLKBSZGET, IOC_R, MK_PTR(TYPE_INT)) |
a59b5e35 AG |
107 | IOCTL_SPECIAL(BLKPG, IOC_W, do_ioctl_blkpg, |
108 | MK_PTR(MK_STRUCT(STRUCT_blkpg_ioctl_arg))) | |
4715856a PM |
109 | |
110 | #ifdef BLKDISCARD | |
111 | IOCTL(BLKDISCARD, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2))) | |
112 | #endif | |
113 | #ifdef BLKIOMIN | |
114 | IOCTL(BLKIOMIN, IOC_R, MK_PTR(TYPE_INT)) | |
115 | #endif | |
116 | #ifdef BLKIOOPT | |
117 | IOCTL(BLKIOOPT, IOC_R, MK_PTR(TYPE_INT)) | |
118 | #endif | |
119 | #ifdef BLKALIGNOFF | |
120 | IOCTL(BLKALIGNOFF, IOC_R, MK_PTR(TYPE_INT)) | |
121 | #endif | |
122 | #ifdef BLKPBSZGET | |
123 | IOCTL(BLKPBSZGET, IOC_R, MK_PTR(TYPE_INT)) | |
124 | #endif | |
125 | #ifdef BLKDISCARDZEROES | |
126 | IOCTL(BLKDISCARDZEROES, IOC_R, MK_PTR(TYPE_INT)) | |
127 | #endif | |
128 | #ifdef BLKSECDISCARD | |
129 | IOCTL(BLKSECDISCARD, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2))) | |
130 | #endif | |
131 | #ifdef BLKROTATIONAL | |
132 | IOCTL(BLKROTATIONAL, IOC_R, MK_PTR(TYPE_SHORT)) | |
133 | #endif | |
134 | #ifdef BLKZEROOUT | |
135 | IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2))) | |
136 | #endif | |
137 | ||
7e35fc8b AM |
138 | IOCTL(FDMSGON, 0, TYPE_NULL) |
139 | IOCTL(FDMSGOFF, 0, TYPE_NULL) | |
81eb1a36 | 140 | IOCTL(FDSETEMSGTRESH, 0, TYPE_NULL) |
08e3ce59 AM |
141 | IOCTL(FDFMTBEG, 0, TYPE_NULL) |
142 | IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr))) | |
143 | IOCTL(FDFMTEND, 0, TYPE_NULL) | |
ab22b4dd | 144 | IOCTL(FDFLUSH, 0, TYPE_NULL) |
81eb1a36 AM |
145 | IOCTL(FDSETMAXERRS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors))) |
146 | IOCTL(FDGETMAXERRS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors))) | |
5eea9429 AM |
147 | IOCTL(FDRESET, 0, TYPE_NULL) |
148 | IOCTL(FDRAWCMD, 0, TYPE_NULL) | |
149 | IOCTL(FDTWADDLE, 0, TYPE_NULL) | |
150 | IOCTL(FDEJECT, 0, TYPE_NULL) | |
ab22b4dd | 151 | |
31e31b8a FB |
152 | #ifdef FIBMAP |
153 | IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG)) | |
154 | #endif | |
21992cb6 HD |
155 | #ifdef FICLONE |
156 | IOCTL(FICLONE, IOC_W, TYPE_INT) | |
157 | IOCTL(FICLONERANGE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_file_clone_range))) | |
158 | #endif | |
159 | ||
31e31b8a FB |
160 | #ifdef FIGETBSZ |
161 | IOCTL(FIGETBSZ, IOC_R, MK_PTR(TYPE_LONG)) | |
162 | #endif | |
dace20dc | 163 | #ifdef CONFIG_FIEMAP |
285da2b9 PM |
164 | IOCTL_SPECIAL(FS_IOC_FIEMAP, IOC_W | IOC_R, do_ioctl_fs_ioc_fiemap, |
165 | MK_PTR(MK_STRUCT(STRUCT_fiemap))) | |
166 | #endif | |
31e31b8a | 167 | |
60807231 PM |
168 | IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_INT)) |
169 | IOCTL(FS_IOC_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) | |
5ae774a9 AM |
170 | IOCTL(FS_IOC_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) |
171 | IOCTL(FS_IOC_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) | |
0b471ba6 AM |
172 | IOCTL(FS_IOC32_GETFLAGS, IOC_R, MK_PTR(TYPE_INT)) |
173 | IOCTL(FS_IOC32_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) | |
0d899cd6 AM |
174 | IOCTL(FS_IOC32_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) |
175 | IOCTL(FS_IOC32_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) | |
60807231 | 176 | |
6c753a63 CT |
177 | #ifdef CONFIG_USBFS |
178 | /* USB ioctls */ | |
179 | IOCTL(USBDEVFS_CONTROL, IOC_RW, | |
180 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_ctrltransfer))) | |
181 | IOCTL(USBDEVFS_BULK, IOC_RW, | |
182 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_bulktransfer))) | |
183 | IOCTL(USBDEVFS_RESETEP, IOC_W, MK_PTR(TYPE_INT)) | |
184 | IOCTL(USBDEVFS_SETINTERFACE, IOC_W, | |
185 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_setinterface))) | |
186 | IOCTL(USBDEVFS_SETCONFIGURATION, IOC_W, MK_PTR(TYPE_INT)) | |
187 | IOCTL(USBDEVFS_GETDRIVER, IOC_R, | |
188 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_getdriver))) | |
a133367e CT |
189 | IOCTL_SPECIAL(USBDEVFS_SUBMITURB, IOC_W, do_ioctl_usbdevfs_submiturb, |
190 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_urb))) | |
191 | IOCTL_SPECIAL(USBDEVFS_DISCARDURB, IOC_RW, do_ioctl_usbdevfs_discardurb, | |
192 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_urb))) | |
193 | IOCTL_SPECIAL(USBDEVFS_REAPURB, IOC_R, do_ioctl_usbdevfs_reapurb, | |
194 | MK_PTR(TYPE_PTRVOID)) | |
195 | IOCTL_SPECIAL(USBDEVFS_REAPURBNDELAY, IOC_R, do_ioctl_usbdevfs_reapurb, | |
196 | MK_PTR(TYPE_PTRVOID)) | |
6c753a63 CT |
197 | IOCTL(USBDEVFS_DISCSIGNAL, IOC_W, |
198 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_disconnectsignal))) | |
199 | IOCTL(USBDEVFS_CLAIMINTERFACE, IOC_W, MK_PTR(TYPE_INT)) | |
200 | IOCTL(USBDEVFS_RELEASEINTERFACE, IOC_W, MK_PTR(TYPE_INT)) | |
201 | IOCTL(USBDEVFS_CONNECTINFO, IOC_R, | |
202 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_connectinfo))) | |
203 | IOCTL(USBDEVFS_IOCTL, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_usbdevfs_ioctl))) | |
204 | IOCTL(USBDEVFS_HUB_PORTINFO, IOC_R, | |
205 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_hub_portinfo))) | |
206 | IOCTL(USBDEVFS_RESET, 0, TYPE_NULL) | |
207 | IOCTL(USBDEVFS_CLEAR_HALT, IOC_W, MK_PTR(TYPE_INT)) | |
208 | IOCTL(USBDEVFS_DISCONNECT, 0, TYPE_NULL) | |
209 | IOCTL(USBDEVFS_CONNECT, 0, TYPE_NULL) | |
210 | IOCTL(USBDEVFS_CLAIM_PORT, IOC_W, MK_PTR(TYPE_INT)) | |
211 | IOCTL(USBDEVFS_RELEASE_PORT, IOC_W, MK_PTR(TYPE_INT)) | |
212 | IOCTL(USBDEVFS_GET_CAPABILITIES, IOC_R, MK_PTR(TYPE_INT)) | |
213 | IOCTL(USBDEVFS_DISCONNECT_CLAIM, IOC_W, | |
214 | MK_PTR(MK_STRUCT(STRUCT_usbdevfs_disconnect_claim))) | |
215 | #ifdef USBDEVFS_DROP_PRIVILEGES | |
216 | IOCTL(USBDEVFS_DROP_PRIVILEGES, IOC_W, MK_PTR(TYPE_INT)) | |
217 | #endif | |
218 | #ifdef USBDEVFS_GET_SPEED | |
219 | IOCTL(USBDEVFS_GET_SPEED, 0, TYPE_NULL) | |
220 | #endif | |
221 | #endif /* CONFIG_USBFS */ | |
222 | ||
4e4b173f AM |
223 | IOCTL(FIOGETOWN, IOC_R, MK_PTR(TYPE_INT)) |
224 | IOCTL(FIOSETOWN, IOC_W, MK_PTR(TYPE_INT)) | |
a57f1f8f | 225 | IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT)) |
43330b71 | 226 | IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) |
31e31b8a FB |
227 | IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq))) |
228 | IOCTL(SIOCSIFFLAGS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_short_ifreq))) | |
229 | IOCTL(SIOCGIFADDR, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
230 | IOCTL(SIOCSIFADDR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
231 | IOCTL(SIOCGIFBRDADDR, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
232 | IOCTL(SIOCSIFBRDADDR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
233 | IOCTL(SIOCGIFDSTADDR, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
234 | IOCTL(SIOCSIFDSTADDR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
235 | IOCTL(SIOCGIFNETMASK, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
236 | IOCTL(SIOCSIFNETMASK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
237 | IOCTL(SIOCGIFHWADDR, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
238 | IOCTL(SIOCSIFHWADDR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
239 | IOCTL(SIOCGIFTXQLEN, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
240 | IOCTL(SIOCSIFTXQLEN, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
241 | IOCTL(SIOCGIFMETRIC, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) | |
242 | IOCTL(SIOCSIFMETRIC, IOC_W, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) | |
243 | IOCTL(SIOCGIFMTU, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) | |
244 | IOCTL(SIOCSIFMTU, IOC_W, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) | |
245 | IOCTL(SIOCGIFMAP, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_ifmap_ifreq))) | |
246 | IOCTL(SIOCSIFMAP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_ifmap_ifreq))) | |
247 | IOCTL(SIOCGIFSLAVE, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_char_ifreq))) | |
248 | IOCTL(SIOCSIFSLAVE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_char_ifreq))) | |
249 | IOCTL(SIOCGIFMEM, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_ptr_ifreq))) | |
250 | IOCTL(SIOCSIFMEM, IOC_W, MK_PTR(MK_STRUCT(STRUCT_ptr_ifreq))) | |
251 | IOCTL(SIOCADDMULTI, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
252 | IOCTL(SIOCDELMULTI, IOC_W, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq))) | |
27a07827 | 253 | IOCTL(SIOCGIFINDEX, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_int_ifreq))) |
4bdcd79e NC |
254 | IOCTL(SIOCSIFPFLAGS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_short_ifreq))) |
255 | IOCTL(SIOCGIFPFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq))) | |
31e31b8a | 256 | IOCTL(SIOCSIFLINK, 0, TYPE_NULL) |
059c2f2c LV |
257 | IOCTL_SPECIAL(SIOCGIFCONF, IOC_W | IOC_R, do_ioctl_ifconf, |
258 | MK_PTR(MK_STRUCT(STRUCT_ifconf))) | |
31e31b8a FB |
259 | IOCTL(SIOCGIFENCAP, IOC_RW, MK_PTR(TYPE_INT)) |
260 | IOCTL(SIOCSIFENCAP, IOC_W, MK_PTR(TYPE_INT)) | |
261 | IOCTL(SIOCDARP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
262 | IOCTL(SIOCSARP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
263 | IOCTL(SIOCGARP, IOC_R, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
264 | IOCTL(SIOCDRARP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
265 | IOCTL(SIOCSRARP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
266 | IOCTL(SIOCGRARP, IOC_R, MK_PTR(MK_STRUCT(STRUCT_arpreq))) | |
86fcd946 | 267 | IOCTL(SIOCGIWNAME, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_char_ifreq))) |
c495a793 | 268 | IOCTL(SIOCSPGRP, IOC_W, MK_PTR(TYPE_INT)) /* pid_t */ |
405b4915 | 269 | IOCTL(SIOCGPGRP, IOC_R, MK_PTR(TYPE_INT)) /* pid_t */ |
6d5d5dde DB |
270 | |
271 | /* | |
272 | * We can't use IOCTL_SPECIAL() because it will set | |
273 | * host_cmd to XXX_OLD and XXX_NEW and these macros | |
274 | * are not defined with kernel prior to 5.2. | |
275 | * We must set host_cmd to the same value as in target_cmd | |
276 | * otherwise the consistency check in syscall_init() | |
277 | * will trigger an error. | |
278 | * host_cmd is ignored by the do_ioctl_XXX() helpers. | |
279 | * FIXME: create a macro to define this kind of entry | |
280 | */ | |
281 | { TARGET_SIOCGSTAMP_OLD, TARGET_SIOCGSTAMP_OLD, | |
282 | "SIOCGSTAMP_OLD", IOC_R, do_ioctl_SIOCGSTAMP }, | |
283 | { TARGET_SIOCGSTAMPNS_OLD, TARGET_SIOCGSTAMPNS_OLD, | |
284 | "SIOCGSTAMPNS_OLD", IOC_R, do_ioctl_SIOCGSTAMPNS }, | |
285 | { TARGET_SIOCGSTAMP_NEW, TARGET_SIOCGSTAMP_NEW, | |
286 | "SIOCGSTAMP_NEW", IOC_R, do_ioctl_SIOCGSTAMP }, | |
287 | { TARGET_SIOCGSTAMPNS_NEW, TARGET_SIOCGSTAMPNS_NEW, | |
288 | "SIOCGSTAMPNS_NEW", IOC_R, do_ioctl_SIOCGSTAMPNS }, | |
31e31b8a | 289 | |
d6d6d6fe MB |
290 | IOCTL(RNDGETENTCNT, IOC_R, MK_PTR(TYPE_INT)) |
291 | IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT)) | |
292 | IOCTL(RNDZAPENTCNT, 0, TYPE_NULL) | |
293 | IOCTL(RNDCLEARPOOL, 0, TYPE_NULL) | |
92c096f0 AM |
294 | #ifdef RNDRESEEDCRNG |
295 | IOCTL(RNDRESEEDCRNG, 0, TYPE_NULL) | |
296 | #endif | |
d6d6d6fe | 297 | |
31e31b8a FB |
298 | IOCTL(CDROMPAUSE, 0, TYPE_NULL) |
299 | IOCTL(CDROMSTART, 0, TYPE_NULL) | |
300 | IOCTL(CDROMSTOP, 0, TYPE_NULL) | |
301 | IOCTL(CDROMRESUME, 0, TYPE_NULL) | |
302 | IOCTL(CDROMEJECT, 0, TYPE_NULL) | |
303 | IOCTL(CDROMEJECT_SW, 0, TYPE_INT) | |
304 | IOCTL(CDROMCLOSETRAY, 0, TYPE_NULL) | |
305 | IOCTL(CDROMRESET, 0, TYPE_NULL) | |
306 | IOCTL(CDROMPLAYMSF, IOC_W, MK_PTR(TYPE_INT)) | |
307 | IOCTL(CDROMPLAYTRKIND, IOC_W, MK_PTR(TYPE_INT)) | |
308 | IOCTL(CDROMREADTOCHDR, IOC_R, MK_PTR(TYPE_INT)) | |
309 | IOCTL(CDROMREADTOCENTRY, IOC_RW, MK_PTR(TYPE_INT)) | |
310 | IOCTL(CDROMVOLCTRL, IOC_W, MK_PTR(TYPE_INT)) | |
311 | IOCTL(CDROMSUBCHNL, IOC_RW, MK_PTR(TYPE_INT)) | |
312 | /* XXX: incorrect (need specific handling) */ | |
313 | IOCTL(CDROMREADAUDIO, IOC_W, MK_PTR(MK_STRUCT(STRUCT_cdrom_read_audio))) | |
314 | IOCTL(CDROMREADCOOKED, IOC_RW, MK_PTR(TYPE_INT)) | |
315 | IOCTL(CDROMREADRAW, IOC_RW, MK_PTR(TYPE_INT)) | |
316 | IOCTL(CDROMREADMODE1, IOC_RW, MK_PTR(TYPE_INT)) | |
317 | IOCTL(CDROMREADMODE2, IOC_RW, MK_PTR(TYPE_INT)) | |
318 | IOCTL(CDROMREADALL, IOC_RW, MK_PTR(TYPE_INT)) | |
319 | IOCTL(CDROMMULTISESSION, IOC_RW, MK_PTR(TYPE_INT)) | |
320 | IOCTL(CDROM_GET_UPC, IOC_R, MK_PTR(TYPE_INT)) | |
321 | IOCTL(CDROMVOLREAD, IOC_R, MK_PTR(TYPE_INT)) | |
322 | IOCTL(CDROMSEEK, IOC_W, MK_PTR(TYPE_INT)) | |
323 | IOCTL(CDROMPLAYBLK, IOC_W, MK_PTR(TYPE_INT)) | |
324 | IOCTL(CDROM_MEDIA_CHANGED, 0, TYPE_NULL) | |
325 | IOCTL(CDROM_SET_OPTIONS, 0, TYPE_INT) | |
326 | IOCTL(CDROM_CLEAR_OPTIONS, 0, TYPE_INT) | |
327 | IOCTL(CDROM_SELECT_SPEED, 0, TYPE_INT) | |
328 | IOCTL(CDROM_SELECT_DISC, 0, TYPE_INT) | |
329 | IOCTL(CDROM_DRIVE_STATUS, 0, TYPE_NULL) | |
330 | IOCTL(CDROM_DISC_STATUS, 0, TYPE_NULL) | |
331 | IOCTL(CDROMAUDIOBUFSIZ, 0, TYPE_INT) | |
332 | ||
2521d698 | 333 | #if 0 |
31e31b8a FB |
334 | IOCTL(SNDCTL_COPR_HALT, IOC_RW, MK_PTR(TYPE_INT)) |
335 | IOCTL(SNDCTL_COPR_LOAD, IOC_RW, MK_PTR(TYPE_INT)) | |
336 | IOCTL(SNDCTL_COPR_RCODE, IOC_RW, MK_PTR(TYPE_INT)) | |
337 | IOCTL(SNDCTL_COPR_RCVMSG, IOC_R, MK_PTR(TYPE_INT)) | |
338 | IOCTL(SNDCTL_COPR_RDATA, IOC_RW, MK_PTR(TYPE_INT)) | |
339 | IOCTL(SNDCTL_COPR_RESET, 0, TYPE_NULL) | |
340 | IOCTL(SNDCTL_COPR_RUN, IOC_RW, MK_PTR(TYPE_INT)) | |
341 | IOCTL(SNDCTL_COPR_SENDMSG, IOC_RW, MK_PTR(TYPE_INT)) | |
342 | IOCTL(SNDCTL_COPR_WCODE, IOC_W, MK_PTR(TYPE_INT)) | |
343 | IOCTL(SNDCTL_COPR_WDATA, IOC_W, MK_PTR(TYPE_INT)) | |
2521d698 | 344 | #endif |
31e31b8a FB |
345 | IOCTL(SNDCTL_DSP_CHANNELS, IOC_RW, MK_PTR(TYPE_INT)) |
346 | IOCTL(SNDCTL_DSP_GETBLKSIZE, IOC_RW, MK_PTR(TYPE_INT)) | |
347 | IOCTL(SNDCTL_DSP_GETCAPS, IOC_R, MK_PTR(TYPE_INT)) | |
348 | IOCTL(SNDCTL_DSP_GETFMTS, IOC_R, MK_PTR(TYPE_INT)) | |
2521d698 FB |
349 | IOCTL(SNDCTL_DSP_GETIPTR, IOC_R, MK_PTR(MK_STRUCT(STRUCT_count_info))) |
350 | IOCTL(SNDCTL_DSP_GETOPTR, IOC_R, MK_PTR(MK_STRUCT(STRUCT_count_info))) | |
351 | IOCTL(SNDCTL_DSP_GETISPACE, IOC_R, MK_PTR(MK_STRUCT(STRUCT_audio_buf_info))) | |
352 | IOCTL(SNDCTL_DSP_GETOSPACE, IOC_R, MK_PTR(MK_STRUCT(STRUCT_audio_buf_info))) | |
31e31b8a | 353 | IOCTL(SNDCTL_DSP_GETTRIGGER, IOC_R, MK_PTR(TYPE_INT)) |
5f72307d PM |
354 | IOCTL(SNDCTL_DSP_MAPINBUF, IOC_R, MK_PTR(MK_STRUCT(STRUCT_buffmem_desc))) |
355 | IOCTL(SNDCTL_DSP_MAPOUTBUF, IOC_R, MK_PTR(MK_STRUCT(STRUCT_buffmem_desc))) | |
31e31b8a FB |
356 | IOCTL(SNDCTL_DSP_NONBLOCK, 0, TYPE_NULL) |
357 | IOCTL(SNDCTL_DSP_POST, 0, TYPE_NULL) | |
358 | IOCTL(SNDCTL_DSP_RESET, 0, TYPE_NULL) | |
359 | IOCTL(SNDCTL_DSP_SETDUPLEX, 0, TYPE_NULL) | |
360 | IOCTL(SNDCTL_DSP_SETFMT, IOC_RW, MK_PTR(TYPE_INT)) | |
361 | IOCTL(SNDCTL_DSP_SETFRAGMENT, IOC_RW, MK_PTR(TYPE_INT)) | |
362 | IOCTL(SNDCTL_DSP_SETSYNCRO, 0, TYPE_NULL) | |
363 | IOCTL(SNDCTL_DSP_SETTRIGGER, IOC_W, MK_PTR(TYPE_INT)) | |
364 | IOCTL(SNDCTL_DSP_SPEED, IOC_RW, MK_PTR(TYPE_INT)) | |
365 | IOCTL(SNDCTL_DSP_STEREO, IOC_RW, MK_PTR(TYPE_INT)) | |
366 | IOCTL(SNDCTL_DSP_SUBDIVIDE, IOC_RW, MK_PTR(TYPE_INT)) | |
367 | IOCTL(SNDCTL_DSP_SYNC, 0, TYPE_NULL) | |
2521d698 | 368 | #if 0 |
31e31b8a FB |
369 | IOCTL(SNDCTL_FM_4OP_ENABLE, IOC_W, MK_PTR(TYPE_INT)) |
370 | IOCTL(SNDCTL_FM_LOAD_INSTR, IOC_W, MK_PTR(TYPE_INT)) | |
371 | IOCTL(SNDCTL_MIDI_INFO, IOC_RW, MK_PTR(TYPE_INT)) | |
372 | IOCTL(SNDCTL_MIDI_MPUCMD, IOC_RW, MK_PTR(TYPE_INT)) | |
373 | IOCTL(SNDCTL_MIDI_MPUMODE, IOC_RW, MK_PTR(TYPE_INT)) | |
374 | IOCTL(SNDCTL_MIDI_PRETIME, IOC_RW, MK_PTR(TYPE_INT)) | |
375 | IOCTL(SNDCTL_SEQ_CTRLRATE, IOC_RW, MK_PTR(TYPE_INT)) | |
376 | IOCTL(SNDCTL_SEQ_GETINCOUNT, IOC_R, MK_PTR(TYPE_INT)) | |
377 | IOCTL(SNDCTL_SEQ_GETOUTCOUNT, IOC_R, MK_PTR(TYPE_INT)) | |
378 | IOCTL(SNDCTL_SEQ_NRMIDIS, IOC_R, MK_PTR(TYPE_INT)) | |
379 | IOCTL(SNDCTL_SEQ_NRSYNTHS, IOC_R, MK_PTR(TYPE_INT)) | |
380 | IOCTL(SNDCTL_SEQ_OUTOFBAND, IOC_W, MK_PTR(TYPE_INT)) | |
381 | IOCTL(SNDCTL_SEQ_PANIC, 0, TYPE_NULL) | |
382 | IOCTL(SNDCTL_SEQ_PERCMODE, IOC_W, MK_PTR(TYPE_INT)) | |
383 | IOCTL(SNDCTL_SEQ_RESET, 0, TYPE_NULL) | |
384 | IOCTL(SNDCTL_SEQ_RESETSAMPLES, IOC_W, MK_PTR(TYPE_INT)) | |
385 | IOCTL(SNDCTL_SEQ_SYNC, 0, TYPE_NULL) | |
386 | IOCTL(SNDCTL_SEQ_TESTMIDI, IOC_W, MK_PTR(TYPE_INT)) | |
387 | IOCTL(SNDCTL_SEQ_THRESHOLD, IOC_W, MK_PTR(TYPE_INT)) | |
388 | IOCTL(SNDCTL_SYNTH_INFO, IOC_RW, MK_PTR(TYPE_INT)) | |
389 | IOCTL(SNDCTL_SYNTH_MEMAVL, IOC_RW, MK_PTR(TYPE_INT)) | |
390 | IOCTL(SNDCTL_TMR_CONTINUE, 0, TYPE_NULL) | |
391 | IOCTL(SNDCTL_TMR_METRONOME, IOC_W, MK_PTR(TYPE_INT)) | |
392 | IOCTL(SNDCTL_TMR_SELECT, IOC_W, MK_PTR(TYPE_INT)) | |
393 | IOCTL(SNDCTL_TMR_SOURCE, IOC_RW, MK_PTR(TYPE_INT)) | |
9de5e440 FB |
394 | #if 0 |
395 | /* we invalidate these defines because they have a same number as | |
396 | termios ioctls */ | |
31e31b8a FB |
397 | IOCTL(SNDCTL_TMR_START, 0, TYPE_NULL) |
398 | IOCTL(SNDCTL_TMR_STOP, 0, TYPE_NULL) | |
9de5e440 | 399 | #endif |
31e31b8a FB |
400 | IOCTL(SNDCTL_TMR_TEMPO, IOC_RW, MK_PTR(TYPE_INT)) |
401 | IOCTL(SNDCTL_TMR_TIMEBASE, IOC_RW, MK_PTR(TYPE_INT)) | |
402 | ||
403 | IOCTL(SOUND_PCM_WRITE_FILTER, IOC_W | IOC_R, MK_PTR(TYPE_INT)) | |
404 | IOCTL(SOUND_PCM_READ_RATE, IOC_R, MK_PTR(TYPE_INT)) | |
405 | IOCTL(SOUND_PCM_READ_CHANNELS, IOC_R, MK_PTR(TYPE_INT)) | |
406 | IOCTL(SOUND_PCM_READ_BITS, IOC_R, MK_PTR(TYPE_INT)) | |
407 | IOCTL(SOUND_PCM_READ_FILTER, IOC_R, MK_PTR(TYPE_INT)) | |
2521d698 | 408 | #endif |
31e31b8a FB |
409 | IOCTL(SOUND_MIXER_INFO, IOC_R, MK_PTR(TYPE_INT)) |
410 | IOCTL(SOUND_MIXER_ACCESS, 0, TYPE_PTRVOID) | |
411 | IOCTL(SOUND_MIXER_PRIVATE1, IOC_RW, MK_PTR(TYPE_INT)) | |
412 | IOCTL(SOUND_MIXER_PRIVATE2, IOC_RW, MK_PTR(TYPE_INT)) | |
413 | IOCTL(SOUND_MIXER_PRIVATE3, IOC_RW, MK_PTR(TYPE_INT)) | |
414 | IOCTL(SOUND_MIXER_PRIVATE4, IOC_RW, MK_PTR(TYPE_INT)) | |
415 | IOCTL(SOUND_MIXER_PRIVATE5, IOC_RW, MK_PTR(TYPE_INT)) | |
416 | IOCTL(SOUND_MIXER_READ_VOLUME, IOC_R, MK_PTR(TYPE_INT)) | |
417 | IOCTL(SOUND_MIXER_READ_BASS, IOC_R, MK_PTR(TYPE_INT)) | |
418 | IOCTL(SOUND_MIXER_READ_TREBLE, IOC_R, MK_PTR(TYPE_INT)) | |
419 | IOCTL(SOUND_MIXER_READ_SYNTH, IOC_R, MK_PTR(TYPE_INT)) | |
420 | IOCTL(SOUND_MIXER_READ_PCM, IOC_R, MK_PTR(TYPE_INT)) | |
421 | IOCTL(SOUND_MIXER_READ_SPEAKER, IOC_R, MK_PTR(TYPE_INT)) | |
422 | IOCTL(SOUND_MIXER_READ_LINE, IOC_R, MK_PTR(TYPE_INT)) | |
423 | IOCTL(SOUND_MIXER_READ_MIC, IOC_R, MK_PTR(TYPE_INT)) | |
424 | IOCTL(SOUND_MIXER_READ_CD, IOC_R, MK_PTR(TYPE_INT)) | |
425 | IOCTL(SOUND_MIXER_READ_IMIX, IOC_R, MK_PTR(TYPE_INT)) | |
426 | IOCTL(SOUND_MIXER_READ_ALTPCM, IOC_R, MK_PTR(TYPE_INT)) | |
427 | IOCTL(SOUND_MIXER_READ_RECLEV, IOC_R, MK_PTR(TYPE_INT)) | |
428 | IOCTL(SOUND_MIXER_READ_IGAIN, IOC_R, MK_PTR(TYPE_INT)) | |
429 | IOCTL(SOUND_MIXER_READ_OGAIN, IOC_R, MK_PTR(TYPE_INT)) | |
430 | IOCTL(SOUND_MIXER_READ_LINE1, IOC_R, MK_PTR(TYPE_INT)) | |
431 | IOCTL(SOUND_MIXER_READ_LINE2, IOC_R, MK_PTR(TYPE_INT)) | |
432 | IOCTL(SOUND_MIXER_READ_LINE3, IOC_R, MK_PTR(TYPE_INT)) | |
433 | IOCTL(SOUND_MIXER_READ_MUTE, IOC_R, MK_PTR(TYPE_INT)) | |
434 | IOCTL(SOUND_MIXER_READ_ENHANCE, IOC_R, MK_PTR(TYPE_INT)) | |
435 | IOCTL(SOUND_MIXER_READ_LOUD, IOC_R, MK_PTR(TYPE_INT)) | |
436 | IOCTL(SOUND_MIXER_READ_RECSRC, IOC_R, MK_PTR(TYPE_INT)) | |
437 | IOCTL(SOUND_MIXER_READ_DEVMASK, IOC_R, MK_PTR(TYPE_INT)) | |
438 | IOCTL(SOUND_MIXER_READ_RECMASK, IOC_R, MK_PTR(TYPE_INT)) | |
439 | IOCTL(SOUND_MIXER_READ_STEREODEVS, IOC_R, MK_PTR(TYPE_INT)) | |
440 | IOCTL(SOUND_MIXER_READ_CAPS, IOC_R, MK_PTR(TYPE_INT)) | |
441 | ||
442 | IOCTL(SOUND_MIXER_WRITE_VOLUME, IOC_W, MK_PTR(TYPE_INT)) | |
443 | IOCTL(SOUND_MIXER_WRITE_BASS, IOC_W, MK_PTR(TYPE_INT)) | |
444 | IOCTL(SOUND_MIXER_WRITE_TREBLE, IOC_W, MK_PTR(TYPE_INT)) | |
445 | IOCTL(SOUND_MIXER_WRITE_SYNTH, IOC_W, MK_PTR(TYPE_INT)) | |
446 | IOCTL(SOUND_MIXER_WRITE_PCM, IOC_W, MK_PTR(TYPE_INT)) | |
447 | IOCTL(SOUND_MIXER_WRITE_SPEAKER, IOC_W, MK_PTR(TYPE_INT)) | |
448 | IOCTL(SOUND_MIXER_WRITE_LINE, IOC_W, MK_PTR(TYPE_INT)) | |
449 | IOCTL(SOUND_MIXER_WRITE_MIC, IOC_W, MK_PTR(TYPE_INT)) | |
450 | IOCTL(SOUND_MIXER_WRITE_CD, IOC_W, MK_PTR(TYPE_INT)) | |
451 | IOCTL(SOUND_MIXER_WRITE_IMIX, IOC_W, MK_PTR(TYPE_INT)) | |
452 | IOCTL(SOUND_MIXER_WRITE_ALTPCM, IOC_W, MK_PTR(TYPE_INT)) | |
453 | IOCTL(SOUND_MIXER_WRITE_RECLEV, IOC_W, MK_PTR(TYPE_INT)) | |
454 | IOCTL(SOUND_MIXER_WRITE_IGAIN, IOC_W, MK_PTR(TYPE_INT)) | |
455 | IOCTL(SOUND_MIXER_WRITE_OGAIN, IOC_W, MK_PTR(TYPE_INT)) | |
456 | IOCTL(SOUND_MIXER_WRITE_LINE1, IOC_W, MK_PTR(TYPE_INT)) | |
457 | IOCTL(SOUND_MIXER_WRITE_LINE2, IOC_W, MK_PTR(TYPE_INT)) | |
458 | IOCTL(SOUND_MIXER_WRITE_LINE3, IOC_W, MK_PTR(TYPE_INT)) | |
459 | IOCTL(SOUND_MIXER_WRITE_MUTE, IOC_W, MK_PTR(TYPE_INT)) | |
460 | IOCTL(SOUND_MIXER_WRITE_ENHANCE, IOC_W, MK_PTR(TYPE_INT)) | |
461 | IOCTL(SOUND_MIXER_WRITE_LOUD, IOC_W, MK_PTR(TYPE_INT)) | |
462 | IOCTL(SOUND_MIXER_WRITE_RECSRC, IOC_W, MK_PTR(TYPE_INT)) | |
463 | ||
1c4c6fcd FB |
464 | IOCTL(SNDRV_TIMER_IOCTL_PVERSION, IOC_R, MK_PTR(TYPE_INT)) |
465 | IOCTL(SNDRV_TIMER_IOCTL_NEXT_DEVICE, IOC_RW, | |
466 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_id))) | |
aca7708e FB |
467 | IOCTL(SNDRV_TIMER_IOCTL_GINFO, IOC_RW, |
468 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_ginfo))) | |
469 | IOCTL(SNDRV_TIMER_IOCTL_GPARAMS, IOC_W, | |
470 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_gparams))) | |
471 | IOCTL(SNDRV_TIMER_IOCTL_GSTATUS, IOC_RW, | |
472 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_gstatus))) | |
d22edf0a FB |
473 | IOCTL(SNDRV_TIMER_IOCTL_SELECT, IOC_W, |
474 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_select))) | |
fe333025 FB |
475 | IOCTL(SNDRV_TIMER_IOCTL_INFO, IOC_R, MK_PTR(MK_STRUCT(STRUCT_snd_timer_info))) |
476 | IOCTL(SNDRV_TIMER_IOCTL_PARAMS, IOC_W, | |
477 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_params))) | |
478 | IOCTL(SNDRV_TIMER_IOCTL_STATUS, IOC_R, | |
479 | MK_PTR(MK_STRUCT(STRUCT_snd_timer_status))) | |
045823a9 FB |
480 | IOCTL(SNDRV_TIMER_IOCTL_START, 0, TYPE_NULL) |
481 | IOCTL(SNDRV_TIMER_IOCTL_STOP, 0, TYPE_NULL) | |
482 | IOCTL(SNDRV_TIMER_IOCTL_CONTINUE, 0, TYPE_NULL) | |
483 | IOCTL(SNDRV_TIMER_IOCTL_PAUSE, 0, TYPE_NULL) | |
1c4c6fcd | 484 | |
31e31b8a FB |
485 | IOCTL(HDIO_GETGEO, IOC_R, MK_PTR(MK_STRUCT(STRUCT_hd_geometry))) |
486 | IOCTL(HDIO_GET_UNMASKINTR, IOC_R, MK_PTR(TYPE_INT)) | |
487 | IOCTL(HDIO_GET_MULTCOUNT, IOC_R, MK_PTR(TYPE_INT)) | |
488 | IOCTL(HDIO_GET_IDENTITY, IOC_R, MK_PTR(TYPE_INT)) | |
489 | IOCTL(HDIO_GET_KEEPSETTINGS, IOC_R, MK_PTR(TYPE_INT)) | |
490 | IOCTL(HDIO_GET_NOWERR, IOC_R, MK_PTR(TYPE_INT)) | |
491 | IOCTL(HDIO_GET_DMA, IOC_R, MK_PTR(TYPE_INT)) | |
492 | IOCTL(HDIO_GET_32BIT, IOC_R, MK_PTR(TYPE_INT)) | |
493 | IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT)) | |
494 | IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT) | |
495 | IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT) | |
496 | IOCTL(HDIO_SET_KEEPSETTINGS, 0, TYPE_INT) | |
497 | IOCTL(HDIO_SET_NOWERR, 0, TYPE_INT) | |
498 | IOCTL(HDIO_SET_DMA, 0, TYPE_INT) | |
499 | IOCTL(HDIO_SET_32BIT, 0, TYPE_INT) | |
500 | IOCTL(HDIO_SET_PIO_MODE, 0, TYPE_INT) | |
1a9353d2 FB |
501 | |
502 | IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2))) | |
503 | IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2))) | |
b8005914 AZ |
504 | |
505 | IOCTL(LOOP_SET_FD, 0, TYPE_INT) | |
506 | IOCTL(LOOP_CLR_FD, 0, TYPE_INT) | |
507 | IOCTL(LOOP_SET_STATUS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info))) | |
f2c2fb50 | 508 | IOCTL(LOOP_GET_STATUS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_loop_info))) |
b8005914 | 509 | IOCTL(LOOP_SET_STATUS64, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info64))) |
f2c2fb50 | 510 | IOCTL(LOOP_GET_STATUS64, IOC_R, MK_PTR(MK_STRUCT(STRUCT_loop_info64))) |
b8005914 | 511 | IOCTL(LOOP_CHANGE_FD, 0, TYPE_INT) |
8fbd6b52 | 512 | |
884cdc48 PM |
513 | IOCTL(LOOP_CTL_ADD, 0, TYPE_INT) |
514 | IOCTL(LOOP_CTL_REMOVE, 0, TYPE_INT) | |
515 | IOCTL(LOOP_CTL_GET_FREE, 0, TYPE_NULL) | |
516 | ||
8fbd6b52 AZ |
517 | IOCTL(MTIOCTOP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_mtop))) |
518 | IOCTL(MTIOCGET, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtget))) | |
519 | IOCTL(MTIOCPOS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtpos))) | |
f7680a55 UH |
520 | |
521 | IOCTL(FBIOGET_FSCREENINFO, IOC_R, MK_PTR(MK_STRUCT(STRUCT_fb_fix_screeninfo))) | |
522 | IOCTL(FBIOGET_VSCREENINFO, IOC_R, MK_PTR(MK_STRUCT(STRUCT_fb_var_screeninfo))) | |
523 | IOCTL(FBIOPUT_VSCREENINFO, IOC_W, MK_PTR(MK_STRUCT(STRUCT_fb_var_screeninfo))) | |
12b81b71 CV |
524 | IOCTL(FBIOGETCMAP, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_fb_cmap))) |
525 | IOCTL(FBIOPUTCMAP, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_fb_cmap))) | |
526 | IOCTL(FBIOPAN_DISPLAY, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_fb_var_screeninfo))) | |
527 | IOCTL(FBIOGET_CON2FBMAP, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_fb_con2fbmap))) | |
528 | IOCTL(FBIOPUT_CON2FBMAP, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_fb_con2fbmap))) | |
f7680a55 UH |
529 | |
530 | IOCTL(VT_OPENQRY, IOC_R, MK_PTR(TYPE_INT)) | |
531 | IOCTL(VT_GETSTATE, IOC_R, MK_PTR(MK_STRUCT(STRUCT_vt_stat))) | |
532 | IOCTL(VT_ACTIVATE, 0, TYPE_INT) | |
533 | IOCTL(VT_WAITACTIVE, 0, TYPE_INT) | |
534 | IOCTL(VT_LOCKSWITCH, 0, TYPE_INT) | |
535 | IOCTL(VT_UNLOCKSWITCH, 0, TYPE_INT) | |
774750c0 CV |
536 | IOCTL(VT_GETMODE, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_vt_mode))) |
537 | IOCTL(VT_SETMODE, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_vt_mode))) | |
538 | IOCTL(VT_RELDISP, 0, TYPE_INT) | |
539 | IOCTL(VT_DISALLOCATE, 0, TYPE_INT) | |
56e904ec AG |
540 | |
541 | IOCTL(DM_VERSION, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
542 | IOCTL_SPECIAL(DM_REMOVE_ALL, IOC_RW, do_ioctl_dm, | |
543 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
544 | IOCTL_SPECIAL(DM_LIST_DEVICES, IOC_RW, do_ioctl_dm, | |
545 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
546 | IOCTL_SPECIAL(DM_DEV_CREATE, IOC_RW, do_ioctl_dm, | |
547 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
548 | IOCTL_SPECIAL(DM_DEV_REMOVE, IOC_RW, do_ioctl_dm, | |
549 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
550 | IOCTL_SPECIAL(DM_DEV_RENAME, IOC_RW, do_ioctl_dm, | |
551 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
552 | IOCTL_SPECIAL(DM_DEV_SUSPEND, IOC_RW, do_ioctl_dm, | |
553 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
554 | IOCTL_SPECIAL(DM_DEV_STATUS, IOC_RW, do_ioctl_dm, | |
555 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
556 | IOCTL_SPECIAL(DM_DEV_WAIT, IOC_RW, do_ioctl_dm, | |
557 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
558 | IOCTL_SPECIAL(DM_TABLE_LOAD, IOC_RW, do_ioctl_dm, | |
559 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
560 | IOCTL_SPECIAL(DM_TABLE_CLEAR, IOC_RW, do_ioctl_dm, | |
561 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
562 | IOCTL_SPECIAL(DM_TABLE_DEPS, IOC_RW, do_ioctl_dm, | |
563 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
564 | IOCTL_SPECIAL(DM_TABLE_STATUS, IOC_RW, do_ioctl_dm, | |
565 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
566 | IOCTL_SPECIAL(DM_LIST_VERSIONS,IOC_RW, do_ioctl_dm, | |
567 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
568 | IOCTL_SPECIAL(DM_TARGET_MSG, IOC_RW, do_ioctl_dm, | |
569 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
570 | IOCTL_SPECIAL(DM_DEV_SET_GEOMETRY, IOC_RW, do_ioctl_dm, | |
571 | MK_PTR(MK_STRUCT(STRUCT_dm_ioctl))) | |
7ff7b666 LV |
572 | IOCTL_SPECIAL(SIOCADDRT, IOC_W, do_ioctl_rt, |
573 | MK_PTR(MK_STRUCT(STRUCT_rtentry))) | |
574 | IOCTL_SPECIAL(SIOCDELRT, IOC_W, do_ioctl_rt, | |
575 | MK_PTR(MK_STRUCT(STRUCT_rtentry))) | |
8cb762fe HD |
576 | |
577 | #ifdef TARGET_TIOCSTART | |
578 | IOCTL_IGNORE(TIOCSTART) | |
579 | IOCTL_IGNORE(TIOCSTOP) | |
580 | #endif | |
bd27e675 AM |
581 | |
582 | #ifdef CONFIG_KCOV | |
583 | IOCTL(KCOV_ENABLE, 0, TYPE_NULL) | |
584 | IOCTL(KCOV_DISABLE, 0, TYPE_NULL) | |
f7dbd8fe | 585 | IOCTL(KCOV_INIT_TRACE, IOC_R, TYPE_ULONG) |
bd27e675 | 586 | #endif |