1 .\" Ioctl List 1.3.27 is copyright 1995 by Michael Elizabeth Chastain.
2 .\" Michael Elizabeth Chastain
3 .\" <mec@duracef.shout.net>
5 .\" %%%LICENSE_START(GPLv2_MISC)
6 .\" It is licensed under the Gnu Public License, Version 2.
18 .\" 1.3.27 421 ioctls.
19 .\" Type information for non-pointer args.
20 .\" SIOCDEVPRIVATE, SIOCPROTOPRIVATE ioctls.
21 .\" Descriptions of extended arguments.
24 .\" First public version.
27 .\" 2007-12-29 Alain Portal <aportal@univ-montp2.fr> and Michael Kerrisk
28 .\" <mtk.manpages@gmail.com>:
29 .\" Various formatting improvements
30 .\"*******************************************************************
32 .\" This file was generated with po4a. Translate the source file.
34 .\"*******************************************************************
36 .\" Japanese Version Copyright (c) 1996 Akira Yoshiyama
37 .\" all rights reserved.
38 .\" Translated Sun Jun 30 20:46:54 JST 1996
39 .\" by Akira Yoshiyama <yosshy@jedi.seg.kobe-u.ac.jp>
40 .\" Modified Sat Dec 13 20:25:06 JST 1997
41 .\" by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
42 .\" Updated & Modified Wed May 19 05:31:50 JST 2004
43 .\" by Yuichi SATO <ysato444@yahoo.co.jp>
44 .\" Updated 2008-02-12, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.77
46 .TH IOCTL_LIST 2 2013\-09\-17 Linux "Linux Programmer's Manual"
48 ioctl_list \- Linux/i386 カーネルの ioctl のリスト
50 この文章は ioctl リスト 1.3.27、つまり Linux/i386 カーネル 1.3.27 に おける ioctl
51 コールの一覧です。このリストは \fI</usr/include/{asm,linux}/*.h>\fP にある 421 の ioctl
52 を含んでいます。全ての ioctl に対して、数値、名称、 引き数の型を列挙してあります。
54 引き数型 \fIconst struct foo\ *\fP は、その引き数がカーネルへの入力である事を意味します。また、 \fIstruct foo\ *\fP
55 は、その引き数がカーネルからの出力である事を意味します。 カーネルがその引き数を入力と出力の両方に使用する場合は、 \fI//\ I\-O\fP
58 いくつかの ioctl は複数の構造体の引き数を必要としたり、値を返したり します。これらには \fI//\ MORE\fP マークを付けて、
59 さらに分離したセクションで説明してあります。
63 .\" added two sections - aeb
64 ioctl コマンドの値は 32 ビットの定数です。 原則として、これらの定数は全く任意のものですが、
65 設計者は何らかの構造をこれらの定数に組み込もうとしています。
67 昔の Linux では、大部分は 16 ビットの定数であり、 下位バイトはシリアル番号で、上位バイトはドライバのタイプを表していました。
68 メジャー番号が使われることもありました: 0x03 が \fBHDIO_*\fP ioctl, 0x06 が \fBLP*\fP ioctl などです。 1
69 文字以上の ASCII 文字列が使われることもありました。 たとえば \fBTCGETS\fP の値は 0x00005401 であり、 0x54 =
70 \(aqT\(aq でターミナルドライバを表します。 \fBCYGETTIMEOUT\fP の値は 0x00435906 であり、 0x43 0x59 =
71 \(aqC\(aq \(aqY\(aq で cyclades ドライバを表します。
73 後の時代 (0.98p5) になると、 より多くの情報が数値に組み込まれるようになりました。 1 つの数値は、読み書きの方向を表す 2 ビット (00:
74 読み書きなし, 01: 書き込み, 10: 読み込み, 11: 読み込み/書き込み)、 (引き数のサイズを表す) 14 ビット、
75 (共通の目的または共通のドライバで ioctl をグループにするための) 8 ビットのタイプ、8 ビットのシリアル番号から構成されます。
77 この構造を記述するマクロは \fI<asm/ioctl.h>\fP にあり、 \fB_IO(type,nr)\fP と
78 \fB{_IOR,_IOW,_IOWR}(type,nr,size)\fP です。 これらのマクロは \fIsizeof(size)\fP を使うので、 ここで
79 size という名前にしているのは間違っています: この 3 つ目の引き数はデータタイプです。
81 size ビットは全く当てにならない点に注意して下さい: 多くの場合、間違っています。 これは \fIsizeof(sizeof(struct))\fP
82 を使ったバグを含んだマクロや、過去から受け継いだ値が原因です。
84 したがって、新しい構造は不都合な点しかないように思われます: この構造はチェックの手助けにはならず、
85 様々なアーキテクチャによって値を変化させてしまいます。
87 きちんとした ioctl は、成功した場合は 0 を返し、 エラーの場合は \-1 を返します。 また出力値は引き数に格納します。
88 しかし実際は、かなり多くの ioctl が出力値を返します。 これは今のところ以下では示されていません。
92 // <include/asm\-i386/socket.h>
95 0x00008901 FIOSETOWN const int *
96 0x00008902 SIOCSPGRP const int *
97 0x00008903 FIOGETOWN int *
98 0x00008904 SIOCGPGRP int *
99 0x00008905 SIOCATMAR int *
100 0x00008906 SIOCGSTAMP timeval *
103 // <include/asm\-i386/termios.h>
106 0x00005401 TCGETS struct termios *
107 0x00005402 TCSETS const struct termios *
108 0x00005403 TCSETSW const struct termios *
109 0x00005404 TCSETSF const struct termios *
110 0x00005405 TCGETA struct termio *
111 0x00005406 TCSETA const struct termio *
112 0x00005407 TCSETAW const struct termio *
113 0x00005408 TCSETAF const struct termio *
114 0x00005409 TCSBRK int
115 0x0000540A TCXONC int
116 0x0000540B TCFLSH int
117 0x0000540C TIOCEXCL void
118 0x0000540D TIOCNXCL void
119 0x0000540E TIOCSCTTY int
120 0x0000540F TIOCGPGRP pid_t *
121 0x00005410 TIOCSPGRP const pid_t *
122 0x00005411 TIOCOUTQ int *
123 0x00005412 TIOCSTI const char *
124 0x00005413 TIOCGWINSZ struct winsize *
125 0x00005414 TIOCSWINSZ const struct winsize *
126 0x00005415 TIOCMGET int *
127 0x00005416 TIOCMBIS const int *
128 0x00005417 TIOCMBIC const int *
129 0x00005418 TIOCMSET const int *
130 0x00005419 TIOCGSOFTCAR int *
131 0x0000541A TIOCSSOFTCAR const int *
132 0x0000541B FIONREAD int *
133 0x0000541B TIOCINQ int *
134 0x0000541C TIOCLINUX const char * // MORE
135 0x0000541D TIOCCONS void
136 0x0000541E TIOCGSERIAL struct serial_struct *
137 0x0000541F TIOCSSERIAL const struct serial_struct *
138 0x00005420 TIOCPKT const int *
139 0x00005421 FIONBIO const int *
140 0x00005422 TIOCNOTTY void
141 0x00005423 TIOCSETD const int *
142 0x00005424 TIOCGETD int *
143 0x00005425 TCSBRKP int
144 0x00005426 TIOCTTYGSTRUCT struct tty_struct *
145 0x00005450 FIONCLEX void
146 0x00005451 FIOCLEX void
147 0x00005452 FIOASYNC const int *
148 0x00005453 TIOCSERCONFIG void
149 0x00005454 TIOCSERGWILD int *
150 0x00005455 TIOCSERSWILD const int *
151 0x00005456 TIOCGLCKTRMIOS struct termios *
152 0x00005457 TIOCSLCKTRMIOS const struct termios *
153 0x00005458 TIOCSERGSTRUCT struct async_struct *
154 0x00005459 TIOCSERGETLSR int *
156 .\" Some tables are split into two or more to avoid the warning:
157 .\" "table wider than line width". Some lines are to long to fit
158 .\" on one line on an 80 columns console
161 0x0000545A TIOCSERGETMULTI struct serial_multiport_struct *
162 0x0000545B TIOCSERSETMULTI const struct serial_multiport_struct *
165 // <include/linux/ax25.h>
168 0x000089E0 SIOCAX25GETUID const struct sockaddr_ax25 *
169 0x000089E1 SIOCAX25ADDUID const struct sockaddr_ax25 *
170 0x000089E2 SIOCAX25DELUID const struct sockaddr_ax25 *
171 0x000089E3 SIOCAX25NOUID const int *
172 0x000089E4 SIOCAX25DIGCTL const int *
173 0x000089E5 SIOCAX25GETPARMS struct ax25_parms_struct * // I\-O
177 0x000089E6 SIOCAX25SETPARMS const struct ax25_parms_struct *
180 // <include/linux/cdk.h>
183 0x00007314 STL_BINTR void
184 0x00007315 STL_BSTART void
185 0x00007316 STL_BSTOP void
186 0x00007317 STL_BRESET void
189 // <include/linux/cdrom.h>
192 0x00005301 CDROMPAUSE void
193 0x00005302 CDROMRESUME void
194 0x00005303 CDROMPLAYMSF const struct cdrom_msf *
195 0x00005304 CDROMPLAYTRKIND const struct cdrom_ti *
196 0x00005305 CDROMREADTOCHDR struct cdrom_tochdr *
200 0x00005306 CDROMREADTOCENTRY struct cdrom_tocentry * // I\-O
204 0x00005307 CDROMSTOP void
205 0x00005308 CDROMSTART void
206 0x00005309 CDROMEJECT void
207 0x0000530A CDROMVOLCTRL const struct cdrom_volctrl *
208 0x0000530B CDROMSUBCHNL struct cdrom_subchnl * // I\-O
209 0x0000530C CDROMREADMODE2 const struct cdrom_msf * // MORE
210 0x0000530D CDROMREADMODE1 const struct cdrom_msf * // MORE
211 0x0000530E CDROMREADAUDIO const struct cdrom_read_audio * // MORE
212 0x0000530F CDROMEJECT_SW int
216 0x00005310 CDROMMULTISESSION struct cdrom_multisession * // I\-O
220 0x00005311 CDROM_GET_UPC struct { char [8]; } *
221 0x00005312 CDROMRESET void
222 0x00005313 CDROMVOLREAD struct cdrom_volctrl *
223 0x00005314 CDROMREADRAW const struct cdrom_msf * // MORE
224 0x00005315 CDROMREADCOOKED const struct cdrom_msf * // MORE
225 0x00005316 CDROMSEEK const struct cdrom_msf *
228 // <include/linux/cm206.h>
231 0x00002000 CM206CTL_GET_STAT int
232 0x00002001 CM206CTL_GET_LAST_STAT int
235 // <include/linux/cyclades.h>
238 0x00435901 CYGETMON struct cyclades_monitor *
239 0x00435902 CYGETTHRESH int *
240 0x00435903 CYSETTHRESH int
241 0x00435904 CYGETDEFTHRESH int *
242 0x00435905 CYSETDEFTHRESH int
243 0x00435906 CYGETTIMEOUT int *
244 0x00435907 CYSETTIMEOUT int
245 0x00435908 CYGETDEFTIMEOUT int *
246 0x00435909 CYSETDEFTIMEOUT int
249 // <include/linux/ext2_fs.h>
252 0x80046601 EXT2_IOC_GETFLAGS int *
253 0x40046602 EXT2_IOC_SETFLAGS const int *
254 0x80047601 EXT2_IOC_GETVERSION int *
255 0x40047602 EXT2_IOC_SETVERSION const int *
258 // <include/linux/fd.h>
261 0x00000000 FDCLRPRM void
262 0x00000001 FDSETPRM const struct floppy_struct *
263 0x00000002 FDDEFPRM const struct floppy_struct *
264 0x00000003 FDGETPRM struct floppy_struct *
265 0x00000004 FDMSGON void
266 0x00000005 FDMSGOFF void
267 0x00000006 FDFMTBEG void
268 0x00000007 FDFMTTRK const struct format_descr *
269 0x00000008 FDFMTEND void
270 0x0000000A FDSETEMSGTRESH int
271 0x0000000B FDFLUSH void
272 0x0000000C FDSETMAXERRS const struct floppy_max_errors *
273 0x0000000E FDGETMAXERRS struct floppy_max_errors *
274 0x00000010 FDGETDRVTYP struct { char [16]; } *
275 0x00000014 FDSETDRVPRM const struct floppy_drive_params *
276 0x00000015 FDGETDRVPRM struct floppy_drive_params *
277 0x00000016 FDGETDRVSTAT struct floppy_drive_struct *
278 0x00000017 FDPOLLDRVSTAT struct floppy_drive_struct *
279 0x00000018 FDRESET int
280 0x00000019 FDGETFDCSTAT struct floppy_fdc_state *
281 0x0000001B FDWERRORCLR void
282 0x0000001C FDWERRORGET struct floppy_write_errors *
286 0x0000001E FDRAWCMD struct floppy_raw_cmd * // MORE // I\-O
287 0x00000028 FDTWADDLE void
290 // <include/linux/fs.h>
293 0x0000125D BLKROSET const int *
294 0x0000125E BLKROGET int *
295 0x0000125F BLKRRPART void
296 0x00001260 BLKGETSIZE unsigned long *
297 0x00001261 BLKFLSBUF void
298 0x00001262 BLKRASET int
299 0x00001263 BLKRAGET int *
300 0x00000001 FIBMAP int * // I\-O
301 0x00000002 FIGETBSZ int *
304 // <include/linux/hdreg.h>
307 0x00000301 HDIO_GETGEO struct hd_geometry *
308 0x00000302 HDIO_GET_UNMASKINTR int *
309 0x00000304 HDIO_GET_MULTCOUNT int *
310 0x00000307 HDIO_GET_IDENTITY struct hd_driveid *
311 0x00000308 HDIO_GET_KEEPSETTINGS int *
312 0x00000309 HDIO_GET_CHIPSET int *
313 0x0000030A HDIO_GET_NOWERR int *
314 0x0000030B HDIO_GET_DMA int *
315 0x0000031F HDIO_DRIVE_CMD int * // I\-O
316 0x00000321 HDIO_SET_MULTCOUNT int
317 0x00000322 HDIO_SET_UNMASKINTR int
318 0x00000323 HDIO_SET_KEEPSETTINGS int
319 0x00000324 HDIO_SET_CHIPSET int
320 0x00000325 HDIO_SET_NOWERR int
321 0x00000326 HDIO_SET_DMA int
324 // <include/linux/if_eql.h>
327 0x000089F0 EQL_ENSLAVE struct ifreq * // MORE // I\-O
328 0x000089F1 EQL_EMANCIPATE struct ifreq * // MORE // I\-O
329 0x000089F2 EQL_GETSLAVECFG struct ifreq * // MORE // I\-O
330 0x000089F3 EQL_SETSLAVECFG struct ifreq * // MORE // I\-O
331 0x000089F4 EQL_GETMASTRCFG struct ifreq * // MORE // I\-O
332 0x000089F5 EQL_SETMASTRCFG struct ifreq * // MORE // I\-O
335 // <include/linux/if_plip.h>
338 0x000089F0 SIOCDEVPLIP struct ifreq * // I\-O
341 // <include/linux/if_ppp.h>
344 0x00005490 PPPIOCGFLAGS int *
345 0x00005491 PPPIOCSFLAGS const int *
346 0x00005492 PPPIOCGASYNCMAP int *
347 0x00005493 PPPIOCSASYNCMAP const int *
348 0x00005494 PPPIOCGUNIT int *
349 0x00005495 PPPIOCSINPSIG const int *
350 0x00005497 PPPIOCSDEBUG const int *
351 0x00005498 PPPIOCGDEBUG int *
352 0x00005499 PPPIOCGSTAT struct ppp_stats *
353 0x0000549A PPPIOCGTIME struct ppp_ddinfo *
354 0x0000549B PPPIOCGXASYNCMAP struct { int [8]; } *
355 0x0000549C PPPIOCSXASYNCMAP const struct { int [8]; } *
356 0x0000549D PPPIOCSMRU const int *
357 0x0000549E PPPIOCRASYNCMAP const int *
358 0x0000549F PPPIOCSMAXCID const int *
361 // <include/linux/ipx.h>
364 0x000089E0 SIOCAIPXITFCRT const char *
365 0x000089E1 SIOCAIPXPRISLT const char *
366 0x000089E2 SIOCIPXCFGDATA struct ipx_config_data *
369 // <include/linux/kd.h>
372 0x00004B60 GIO_FONT struct { char [8192]; } *
373 0x00004B61 PIO_FONT const struct { char [8192]; } *
377 0x00004B6B GIO_FONTX struct console_font_desc * // MORE // I\-O
378 0x00004B6C PIO_FONTX const struct console_font_desc * //MORE
382 0x00004B70 GIO_CMAP struct { char [48]; } *
383 0x00004B71 PIO_CMAP const struct { char [48]; }
387 0x00004B2F KIOCSOUND int
388 0x00004B30 KDMKTONE int
389 0x00004B31 KDGETLED char *
390 0x00004B32 KDSETLED int
391 0x00004B33 KDGKBTYPE char *
392 0x00004B34 KDADDIO int // MORE
393 0x00004B35 KDDELIO int // MORE
394 0x00004B36 KDENABIO void // MORE
395 0x00004B37 KDDISABIO void // MORE
396 0x00004B3A KDSETMODE int
397 0x00004B3B KDGETMODE int *
398 0x00004B3C KDMAPDISP void // MORE
399 0x00004B3D KDUNMAPDISP void // MORE
400 0x00004B40 GIO_SCRNMAP struct { char [E_TABSZ]; } *
404 0x00004B41 PIO_SCRNMAP const struct { char [E_TABSZ]; } *
405 0x00004B69 GIO_UNISCRNMAP struct { short [E_TABSZ]; } *
406 0x00004B6A PIO_UNISCRNMAP const struct { short [E_TABSZ]; } *
410 0x00004B66 GIO_UNIMAP struct unimapdesc * // MORE // I\-O
411 0x00004B67 PIO_UNIMAP const struct unimapdesc * // MORE
412 0x00004B68 PIO_UNIMAPCLR const struct unimapinit *
413 0x00004B44 KDGKBMODE int *
414 0x00004B45 KDSKBMODE int
415 0x00004B62 KDGKBMETA int *
416 0x00004B63 KDSKBMETA int
417 0x00004B64 KDGKBLED int *
418 0x00004B65 KDSKBLED int
419 0x00004B46 KDGKBENT struct kbentry * // I\-O
420 0x00004B47 KDSKBENT const struct kbentry *
421 0x00004B48 KDGKBSENT struct kbsentry * // I\-O
422 0x00004B49 KDSKBSENT const struct kbsentry *
423 0x00004B4A KDGKBDIACR struct kbdiacrs *
424 0x00004B4B KDSKBDIACR const struct kbdiacrs *
425 0x00004B4C KDGETKEYCODE struct kbkeycode * // I\-O
426 0x00004B4D KDSETKEYCODE const struct kbkeycode *
427 0x00004B4E KDSIGACCEPT int
430 // <include/linux/lp.h>
433 0x00000601 LPCHAR int
434 0x00000602 LPTIME int
435 0x00000604 LPABORT int
436 0x00000605 LPSETIRQ int
437 0x00000606 LPGETIRQ int *
438 0x00000608 LPWAIT int
439 0x00000609 LPCAREFUL int
440 0x0000060A LPABORTOPEN int
441 0x0000060B LPGETSTATUS int *
442 0x0000060C LPRESET void
443 0x0000060D LPGETSTATS struct lp_stats *
446 // <include/linux/mroute.h>
449 0x000089E0 SIOCGETVIFCNT struct sioc_vif_req * // I\-O
450 0x000089E1 SIOCGETSGCNT struct sioc_sg_req * // I\-O
453 // <include/linux/msdos_fs.h>
456 0x82307201 VFAT_IOCTL_READDIR_BOTH struct dirent [2]
457 0x82307202 VFAT_IOCTL_READDIR_SHORT struct dirent [2]
458 0x80047210 FAT_IOCTL_GET_ATTRIBUTES __u32 *
459 0x40047211 FAT_IOCTL_SET_ATTRIBUTES const __u32 *
462 // <include/linux/mtio.h>
465 0x40086D01 MTIOCTOP const struct mtop *
466 0x801C6D02 MTIOCGET struct mtget *
467 0x80046D03 MTIOCPOS struct mtpos *
468 0x80206D04 MTIOCGETCONFIG struct mtconfiginfo *
469 0x40206D05 MTIOCSETCONFIG const struct mtconfiginfo *
472 // <include/linux/netrom.h>
475 0x000089E0 SIOCNRGETPARMS struct nr_parms_struct * // I\-O
476 0x000089E1 SIOCNRSETPARMS const struct nr_parms_struct *
477 0x000089E2 SIOCNRDECOBS void
478 0x000089E3 SIOCNRRTCTL const int *
481 // <include/linux/sbpcd.h>
484 0x00009000 DDIOCSDBG const int *
485 0x00005382 CDROMAUDIOBUFSIZ int
488 // <include/linux/scc.h>
491 0x00005470 TIOCSCCINI void
492 0x00005471 TIOCCHANINI const struct scc_modem *
493 0x00005472 TIOCGKISS struct ioctl_command * // I\-O
494 0x00005473 TIOCSKISS const struct ioctl_command *
495 0x00005474 TIOCSCCSTAT struct scc_stat *
498 // <include/linux/scsi.h>
501 0x00005382 SCSI_IOCTL_GET_IDLUN struct { int [2]; } *
502 0x00005383 SCSI_IOCTL_TAGGED_ENABLE void
503 0x00005384 SCSI_IOCTL_TAGGED_DISABLE void
507 0x00005385 SCSI_IOCTL_PROBE_HOST const int * // MORE
510 // <include/linux/smb_fs.h>
513 0x80027501 SMB_IOC_GETMOUNTUID uid_t *
516 // <include/linux/sockios.h>
519 0x0000890B SIOCADDRT const struct rtentry * // MORE
520 0x0000890C SIOCDELRT const struct rtentry * // MORE
521 0x00008910 SIOCGIFNAME char []
522 0x00008911 SIOCSIFLINK void
523 0x00008912 SIOCGIFCONF struct ifconf * // MORE // I\-O
524 0x00008913 SIOCGIFFLAGS struct ifreq * // I\-O
525 0x00008914 SIOCSIFFLAGS const struct ifreq *
526 0x00008915 SIOCGIFADDR struct ifreq * // I\-O
527 0x00008916 SIOCSIFADDR const struct ifreq *
528 0x00008917 SIOCGIFDSTADDR struct ifreq * // I\-O
529 0x00008918 SIOCSIFDSTADDR const struct ifreq *
530 0x00008919 SIOCGIFBRDADDR struct ifreq * // I\-O
531 0x0000891A SIOCSIFBRDADDR const struct ifreq *
532 0x0000891B SIOCGIFNETMASK struct ifreq * // I\-O
533 0x0000891C SIOCSIFNETMASK const struct ifreq *
534 0x0000891D SIOCGIFMETRIC struct ifreq * // I\-O
535 0x0000891E SIOCSIFMETRIC const struct ifreq *
536 0x0000891F SIOCGIFMEM struct ifreq * // I\-O
537 0x00008920 SIOCSIFMEM const struct ifreq *
538 0x00008921 SIOCGIFMTU struct ifreq * // I\-O
539 0x00008922 SIOCSIFMTU const struct ifreq *
543 0x00008923 OLD_SIOCGIFHWADDR struct ifreq * // I\-O
544 0x00008924 SIOCSIFHWADDR const struct ifreq * // MORE
545 0x00008925 SIOCGIFENCAP int *
546 0x00008926 SIOCSIFENCAP const int *
547 0x00008927 SIOCGIFHWADDR struct ifreq * // I\-O
548 0x00008929 SIOCGIFSLAVE void
549 0x00008930 SIOCSIFSLAVE void
550 0x00008931 SIOCADDMULTI const struct ifreq *
551 0x00008932 SIOCDELMULTI const struct ifreq *
552 0x00008940 SIOCADDRTOLD void
553 0x00008941 SIOCDELRTOLD void
554 0x00008950 SIOCDARP const struct arpreq *
555 0x00008951 SIOCGARP struct arpreq * // I\-O
556 0x00008952 SIOCSARP const struct arpreq *
557 0x00008960 SIOCDRARP const struct arpreq *
558 0x00008961 SIOCGRARP struct arpreq * // I\-O
559 0x00008962 SIOCSRARP const struct arpreq *
560 0x00008970 SIOCGIFMAP struct ifreq * // I\-O
561 0x00008971 SIOCSIFMAP const struct ifreq *
564 // <include/linux/soundcard.h>
567 0x00005100 SNDCTL_SEQ_RESET void
568 0x00005101 SNDCTL_SEQ_SYNC void
572 0xC08C5102 SNDCTL_SYNTH_INFO struct synth_info * // I\-O
573 0xC0045103 SNDCTL_SEQ_CTRLRATE int * // I\-O
574 0x80045104 SNDCTL_SEQ_GETOUTCOUNT int *
575 0x80045105 SNDCTL_SEQ_GETINCOUNT int *
576 0x40045106 SNDCTL_SEQ_PERCMODE void
580 0x40285107 SNDCTL_FM_LOAD_INSTR const struct sbi_instrument *
584 0x40045108 SNDCTL_SEQ_TESTMIDI const int *
585 0x40045109 SNDCTL_SEQ_RESETSAMPLES const int *
586 0x8004510A SNDCTL_SEQ_NRSYNTHS int *
587 0x8004510B SNDCTL_SEQ_NRMIDIS int *
588 0xC074510C SNDCTL_MIDI_INFO struct midi_info * // I\-O
589 0x4004510D SNDCTL_SEQ_THRESHOLD const int *
590 0xC004510E SNDCTL_SYNTH_MEMAVL int * // I\-O
591 0x4004510F SNDCTL_FM_4OP_ENABLE const int *
592 0xCFB85110 SNDCTL_PMGR_ACCESS struct patmgr_info * // I\-O
593 0x00005111 SNDCTL_SEQ_PANIC void
597 0x40085112 SNDCTL_SEQ_OUTOFBAND const struct seq_event_rec *
601 0xC0045401 SNDCTL_TMR_TIMEBASE int * // I\-O
602 0x00005402 SNDCTL_TMR_START void
603 0x00005403 SNDCTL_TMR_STOP void
604 0x00005404 SNDCTL_TMR_CONTINUE void
605 0xC0045405 SNDCTL_TMR_TEMPO int * // I\-O
606 0xC0045406 SNDCTL_TMR_SOURCE int * // I\-O
607 0x40045407 SNDCTL_TMR_METRONOME const int *
608 0x40045408 SNDCTL_TMR_SELECT int * // I\-O
609 0xCFB85001 SNDCTL_PMGR_IFACE struct patmgr_info * // I\-O
610 0xC0046D00 SNDCTL_MIDI_PRETIME int * // I\-O
611 0xC0046D01 SNDCTL_MIDI_MPUMODE const int *
615 0xC0216D02 SNDCTL_MIDI_MPUCMD struct mpu_command_rec * // I\-O
619 0x00005000 SNDCTL_DSP_RESET void
620 0x00005001 SNDCTL_DSP_SYNC void
621 0xC0045002 SNDCTL_DSP_SPEED int * // I\-O
622 0xC0045003 SNDCTL_DSP_STEREO int * // I\-O
623 0xC0045004 SNDCTL_DSP_GETBLKSIZE int * // I\-O
624 0xC0045006 SOUND_PCM_WRITE_CHANNELS int * // I\-O
625 0xC0045007 SOUND_PCM_WRITE_FILTER int * // I\-O
626 0x00005008 SNDCTL_DSP_POST void
627 0xC0045009 SNDCTL_DSP_SUBDIVIDE int * // I\-O
628 0xC004500A SNDCTL_DSP_SETFRAGMENT int * // I\-O
629 0x8004500B SNDCTL_DSP_GETFMTS int *
630 0xC0045005 SNDCTL_DSP_SETFMT int * // I\-O
634 0x800C500C SNDCTL_DSP_GETOSPACE struct audio_buf_info *
635 0x800C500D SNDCTL_DSP_GETISPACE struct audio_buf_info *
636 0x0000500E SNDCTL_DSP_NONBLOCK void
637 0x80045002 SOUND_PCM_READ_RATE int *
638 0x80045006 SOUND_PCM_READ_CHANNELS int *
639 0x80045005 SOUND_PCM_READ_BITS int *
640 0x80045007 SOUND_PCM_READ_FILTER int *
641 0x00004300 SNDCTL_COPR_RESET void
642 0xCFB04301 SNDCTL_COPR_LOAD const struct copr_buffer *
646 0xC0144302 SNDCTL_COPR_RDATA struct copr_debug_buf * // I\-O
647 0xC0144303 SNDCTL_COPR_RCODE struct copr_debug_buf * // I\-O
651 0x40144304 SNDCTL_COPR_WDATA const struct copr_debug_buf *
652 0x40144305 SNDCTL_COPR_WCODE const struct copr_debug_buf *
656 0xC0144306 SNDCTL_COPR_RUN struct copr_debug_buf * // I\-O
657 0xC0144307 SNDCTL_COPR_HALT struct copr_debug_buf * // I\-O
661 0x4FA44308 SNDCTL_COPR_SENDMSG const struct copr_msg *
662 0x8FA44309 SNDCTL_COPR_RCVMSG struct copr_msg *
663 0x80044D00 SOUND_MIXER_READ_VOLUME int *
664 0x80044D01 SOUND_MIXER_READ_BASS int *
665 0x80044D02 SOUND_MIXER_READ_TREBLE int *
666 0x80044D03 SOUND_MIXER_READ_SYNTH int *
667 0x80044D04 SOUND_MIXER_READ_PCM int *
668 0x80044D05 SOUND_MIXER_READ_SPEAKER int *
669 0x80044D06 SOUND_MIXER_READ_LINE int *
670 0x80044D07 SOUND_MIXER_READ_MIC int *
671 0x80044D08 SOUND_MIXER_READ_CD int *
672 0x80044D09 SOUND_MIXER_READ_IMIX int *
673 0x80044D0A SOUND_MIXER_READ_ALTPCM int *
674 0x80044D0B SOUND_MIXER_READ_RECLEV int *
675 0x80044D0C SOUND_MIXER_READ_IGAIN int *
676 0x80044D0D SOUND_MIXER_READ_OGAIN int *
677 0x80044D0E SOUND_MIXER_READ_LINE1 int *
678 0x80044D0F SOUND_MIXER_READ_LINE2 int *
679 0x80044D10 SOUND_MIXER_READ_LINE3 int *
680 0x80044D1C SOUND_MIXER_READ_MUTE int *
681 0x80044D1D SOUND_MIXER_READ_ENHANCE int *
682 0x80044D1E SOUND_MIXER_READ_LOUD int *
683 0x80044DFF SOUND_MIXER_READ_RECSRC int *
684 0x80044DFE SOUND_MIXER_READ_DEVMASK int *
685 0x80044DFD SOUND_MIXER_READ_RECMASK int *
686 0x80044DFB SOUND_MIXER_READ_STEREODEVS int *
687 0x80044DFC SOUND_MIXER_READ_CAPS int *
691 0xC0044D00 SOUND_MIXER_WRITE_VOLUME int * // I\-O
692 0xC0044D01 SOUND_MIXER_WRITE_BASS int * // I\-O
693 0xC0044D02 SOUND_MIXER_WRITE_TREBLE int * // I\-O
694 0xC0044D03 SOUND_MIXER_WRITE_SYNTH int * // I\-O
695 0xC0044D04 SOUND_MIXER_WRITE_PCM int * // I\-O
696 0xC0044D05 SOUND_MIXER_WRITE_SPEAKER int * // I\-O
697 0xC0044D06 SOUND_MIXER_WRITE_LINE int * // I\-O
698 0xC0044D07 SOUND_MIXER_WRITE_MIC int * // I\-O
699 0xC0044D08 SOUND_MIXER_WRITE_CD int * // I\-O
700 0xC0044D09 SOUND_MIXER_WRITE_IMIX int * // I\-O
701 0xC0044D0A SOUND_MIXER_WRITE_ALTPCM int * // I\-O
702 0xC0044D0B SOUND_MIXER_WRITE_RECLEV int * // I\-O
703 0xC0044D0C SOUND_MIXER_WRITE_IGAIN int * // I\-O
704 0xC0044D0D SOUND_MIXER_WRITE_OGAIN int * // I\-O
705 0xC0044D0E SOUND_MIXER_WRITE_LINE1 int * // I\-O
706 0xC0044D0F SOUND_MIXER_WRITE_LINE2 int * // I\-O
707 0xC0044D10 SOUND_MIXER_WRITE_LINE3 int * // I\-O
708 0xC0044D1C SOUND_MIXER_WRITE_MUTE int * // I\-O
709 0xC0044D1D SOUND_MIXER_WRITE_ENHANCE int * // I\-O
710 0xC0044D1E SOUND_MIXER_WRITE_LOUD int * // I\-O
711 0xC0044DFF SOUND_MIXER_WRITE_RECSRC int * // I\-O
714 // <include/linux/umsdos_fs.h>
717 0x000004D2 UMSDOS_READDIR_DOS struct umsdos_ioctl * // I\-O
718 0x000004D3 UMSDOS_UNLINK_DOS const struct umsdos_ioctl *
719 0x000004D4 UMSDOS_RMDIR_DOS const struct umsdos_ioctl *
720 0x000004D5 UMSDOS_STAT_DOS struct umsdos_ioctl * // I\-O
721 0x000004D6 UMSDOS_CREAT_EMD const struct umsdos_ioctl *
722 0x000004D7 UMSDOS_UNLINK_EMD const struct umsdos_ioctl *
723 0x000004D8 UMSDOS_READDIR_EMD struct umsdos_ioctl * // I\-O
724 0x000004D9 UMSDOS_GETVERSION struct umsdos_ioctl *
725 0x000004DA UMSDOS_INIT_EMD void
726 0x000004DB UMSDOS_DOS_SETUP const struct umsdos_ioctl *
727 0x000004DC UMSDOS_RENAME_DOS const struct umsdos_ioctl *
730 // <include/linux/vt.h>
733 0x00005600 VT_OPENQRY int *
734 0x00005601 VT_GETMODE struct vt_mode *
735 0x00005602 VT_SETMODE const struct vt_mode *
736 0x00005603 VT_GETSTATE struct vt_stat *
737 0x00005604 VT_SENDSIG void
738 0x00005605 VT_RELDISP int
739 0x00005606 VT_ACTIVATE int
740 0x00005607 VT_WAITACTIVE int
741 0x00005608 VT_DISALLOCATE int
742 0x00005609 VT_RESIZE const struct vt_sizes *
743 0x0000560A VT_RESIZEX const struct vt_consize *
746 // More arguments. いくつかの ioctl は追加のポインタを含む構造体へのポインタを使用します。
747 ここでこれらをアルファベット順に説明します。
749 \fBCDROMREADAUDIO\fP は入力ポインタ \fIconst struct cdrom_read_audio\ *\fP を使用します。 \fIbuf\fP
750 フィールドは大きさ \fInframes\ * CD_FRAMESIZE_RAW\fP の出力バッファへのポインタです。
752 \fBCDROMREADCOOKED\fP, \fBCDROMREADMODE1\fP, \fBCDROMREADMODE2\fP, \fBCDROMREADRAW\fP
753 は入力ポインタ \fIconst struct cdrom_msf\ *\fP を使用します。これらは同じポインタを \fIchar []\fP
754 への出力ポインタとして使用します。 長さは要求によって変化します。 \fBCDROMREADMODE1\fP には、多くのデバイスが CD_FRAMESIZE
755 を使用しますが、光学記憶装置 (光ディスク) のドライバは OPT_BLOCKSIZE を使用します (どちらも同じ値で 2048 です)。
758 CDROMREADCOOKED char [CD_FRAMESIZE]
759 CDROMREADMODE1 char [CD_FRAMESIZE or OPT_BLOCKSIZE]
760 CDROMREADMODE2 char [CD_FRAMESIZE_RAW0]
761 CDROMREADRAW char [CD_FRAMESIZE_RAW]
764 \fBEQL_ENSLAVE\fP, \fBEQL_EMANCIPATE\fP, \fBEQL_GETSLAVECFG\fP, \fBEQL_SETSLAVECFG\fP,
765 \fBEQL_GETMASTERCFG\fP, \fBEQL_SETMASTERCFG\fP は \fIstruct ifreq\ *\fP を使用します。
766 \fIifr_data\fP フィールドは以下に示す別の構造体へのポインタです:
769 EQL_ENSLAVE const struct slaving_request *
770 EQL_EMANCIPATE const struct slaving_request *
771 EQL_GETSLAVECFG struct slave_config * // I\-O
772 EQL_SETSLAVECFG const struct slave_config *
773 EQL_GETMASTERCFG struct master_config *
774 EQL_SETMASTERCFG const struct master_config *
777 \fBFDRAWCMD\fP は \fIstruct floppy raw_cmd\ *\fP を使用します。 \fIflags & FD_RAW_WRITE\fP
778 がゼロ以外の場合、 \fIdata\fP は大きさ \fIlength\fP の入力バッファへのポインタになります。 \fIflags & FD_RAW_READ\fP
779 がゼロ以外の場合、 \fIdata\fP は大きさ \fIlength\fP の出力バッファへのポインタになります。
781 \fBGIO_FONTX\fP, \fBPIO_FONTX\fP はそれぞれ \fIstruct console_font_desc\ *\fP と \fIconst
782 struct console_font_desc\ *\fP を使用します。 \fIchardata\fP は \fIchar [charcount]\fP
783 バッファへのポインタです。 これは \fBGIO_FONTX\fP の出力バッファと \fBPIO_FONTX\fP の入力バッファです。
785 \fBGIO_UNIMAP\fP, \fBPIO_UNIMAP\fP はそれぞれ \fIstruct unimapdesc\ *\fP と \fIconst struct
786 unimapdesc\ *\fP を使用します。 \fIentries\fP は \fIstruct unipair [entry_ct]\fP
787 バッファへのポインタです。 これは \fBGIO_UNIMAP\fP の出力バッファと \fBPIO_UNIMAP\fP の入力バッファです。
789 KDADDIO, KDDELIO, KDDISABIO, KDENABIO は I/O ポートへのアクセスを
790 可能/不可能にします。これらは本質的に、'ioperm' への別の インターフェースです。
792 \fBKDMAPDISP\fP, \fBKDUNMAPDISP\fP はメモリマッピングや I/O ポートへのアクセスを可能/不可能にします。
795 \fBSCSI_IOCTL_PROBE_HOST\fP は入力ポインタ \fIconst int\ *\fP を大きさとして使用します。これは同じ大きさの
796 \fIchar []\fP バッファ への出力ポインタとしても使用します。
798 \fBSIOCADDRT\fP, \fBSIOCDELRT\fP は型が以下のプロトコルに依存する入力ポインタを使用します:
801 Most protocols const struct rtentry *
802 AX.25 const struct ax25_route *
803 NET/ROM const struct nr_route_struct *
806 \fBSIOCGIFCONF\fP は \fIstruct ifconf\ *\fP を使用します。この \fIifc_buf\fP フィールドは長さ
807 \fIifc_len\fP バイトのバッファへのポインタです。 これにカーネルが \fIstruct ifreq []\fP 型のリストへ書き込みます。
809 \fBSIOCSIFHWADDR\fP は型が以下のプロトコルに依存する入力ポインタを使用します:
812 Most protocols const struct ifreq *
813 AX.25 const char [AX25_ADDR_LEN]
816 \fBTIOCLINUX\fP は \fIconst char\ *\fP を使用します。このポインタをいくつかの
817 独立したサブクラスを識別する為に使用します。以下のテーブルの中で、 \fIN + foo\fP は N バイトの詰めものの後にある \fIfoo\fP
818 を意味します。 \fIstruct selection\fP は暗黙的に \fIdrivers/char/selection.c\fP の中で定義されています。
821 TIOCLINUX\-2 1 + const struct selection *
824 TIOCLINUX\-5 4 + const struct { long [8]; } *
827 TIOCLINUX\-10 1 + const char *
832 このリストは \fBSIOCDEVPRIVATE\fP から \fBSIOCPROTOPRIVATE\fP の範囲の ioctl を含んでいません。
835 0x00000001 FDSETPRM FIBMAP
836 0x00000002 FDDEFPRM FIGETBSZ
837 0x00005382 CDROMAUDIOBUFSIZ SCSI_IOCTL_GET_IDLUN
838 0x00005402 SNDCTL_TMR_START TCSETS
839 0x00005403 SNDCTL_TMR_STOP TCSETSW
840 0x00005404 SNDCTL_TMR_CONTINUE TCSETSF
845 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.63 の一部
846 である。プロジェクトの説明とバグ報告に関する情報は
847 http://www.kernel.org/doc/man\-pages/ に書かれている。