| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | Ioctl Numbers | 
|  | 2 | 19 October 1999 | 
|  | 3 | Michael Elizabeth Chastain | 
|  | 4 | <mec@shout.net> | 
|  | 5 |  | 
|  | 6 | If you are adding new ioctl's to the kernel, you should use the _IO | 
|  | 7 | macros defined in <linux/ioctl.h>: | 
|  | 8 |  | 
|  | 9 | _IO    an ioctl with no parameters | 
|  | 10 | _IOW   an ioctl with write parameters (copy_from_user) | 
|  | 11 | _IOR   an ioctl with read parameters  (copy_to_user) | 
|  | 12 | _IOWR  an ioctl with both write and read parameters. | 
|  | 13 |  | 
|  | 14 | 'Write' and 'read' are from the user's point of view, just like the | 
|  | 15 | system calls 'write' and 'read'.  For example, a SET_FOO ioctl would | 
|  | 16 | be _IOW, although the kernel would actually read data from user space; | 
|  | 17 | a GET_FOO ioctl would be _IOR, although the kernel would actually write | 
|  | 18 | data to user space. | 
|  | 19 |  | 
|  | 20 | The first argument to _IO, _IOW, _IOR, or _IOWR is an identifying letter | 
|  | 21 | or number from the table below.  Because of the large number of drivers, | 
|  | 22 | many drivers share a partial letter with other drivers. | 
|  | 23 |  | 
|  | 24 | If you are writing a driver for a new device and need a letter, pick an | 
|  | 25 | unused block with enough room for expansion: 32 to 256 ioctl commands. | 
|  | 26 | You can register the block by patching this file and submitting the | 
|  | 27 | patch to Linus Torvalds.  Or you can e-mail me at <mec@shout.net> and | 
|  | 28 | I'll register one for you. | 
|  | 29 |  | 
|  | 30 | The second argument to _IO, _IOW, _IOR, or _IOWR is a sequence number | 
|  | 31 | to distinguish ioctls from each other.  The third argument to _IOW, | 
|  | 32 | _IOR, or _IOWR is the type of the data going into the kernel or coming | 
|  | 33 | out of the kernel (e.g.  'int' or 'struct foo').  NOTE!  Do NOT use | 
|  | 34 | sizeof(arg) as the third argument as this results in your ioctl thinking | 
|  | 35 | it passes an argument of type size_t. | 
|  | 36 |  | 
|  | 37 | Some devices use their major number as the identifier; this is OK, as | 
|  | 38 | long as it is unique.  Some devices are irregular and don't follow any | 
|  | 39 | convention at all. | 
|  | 40 |  | 
|  | 41 | Following this convention is good because: | 
|  | 42 |  | 
|  | 43 | (1) Keeping the ioctl's globally unique helps error checking: | 
|  | 44 | if a program calls an ioctl on the wrong device, it will get an | 
|  | 45 | error rather than some unexpected behaviour. | 
|  | 46 |  | 
|  | 47 | (2) The 'strace' build procedure automatically finds ioctl numbers | 
|  | 48 | defined with _IO, _IOW, _IOR, or _IOWR. | 
|  | 49 |  | 
|  | 50 | (3) 'strace' can decode numbers back into useful names when the | 
|  | 51 | numbers are unique. | 
|  | 52 |  | 
|  | 53 | (4) People looking for ioctls can grep for them more easily when | 
|  | 54 | this convention is used to define the ioctl numbers. | 
|  | 55 |  | 
|  | 56 | (5) When following the convention, the driver code can use generic | 
|  | 57 | code to copy the parameters between user and kernel space. | 
|  | 58 |  | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 59 | This table lists ioctls visible from user land for Linux/x86.  It contains | 
|  | 60 | most drivers up to 2.6.31, but I know I am missing some.  There has been | 
|  | 61 | no attempt to list non-X86 architectures or ioctls from drivers/staging/. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 62 |  | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 63 | Code  Seq#(hex)	Include File		Comments | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 64 | ======================================================== | 
|  | 65 | 0x00	00-1F	linux/fs.h		conflict! | 
|  | 66 | 0x00	00-1F	scsi/scsi_ioctl.h	conflict! | 
|  | 67 | 0x00	00-1F	linux/fb.h		conflict! | 
|  | 68 | 0x00	00-1F	linux/wavefront.h	conflict! | 
|  | 69 | 0x02	all	linux/fd.h | 
|  | 70 | 0x03	all	linux/hdreg.h | 
| Jesper Juhl | d529880 | 2007-07-15 23:41:42 -0700 | [diff] [blame] | 71 | 0x04	D2-DC	linux/umsdos_fs.h	Dead since 2.6.11, but don't reuse these. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 72 | 0x06	all	linux/lp.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 73 | 0x09	all	linux/raid/md_u.h | 
|  | 74 | 0x10	00-0F	drivers/char/s390/vmcp.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 75 | 0x12	all	linux/fs.h | 
|  | 76 | linux/blkpg.h | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 77 | 0x1b	all	InfiniBand Subsystem	<http://infiniband.sourceforge.net/> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 78 | 0x20	all	drivers/cdrom/cm206.h | 
|  | 79 | 0x22	all	scsi/sg.h | 
|  | 80 | '#'	00-3F	IEEE 1394 Subsystem	Block for the entire subsystem | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 81 | '$'	00-0F	linux/perf_counter.h, linux/perf_event.h | 
| Stefan Richter | aed69d2 | 2010-07-22 19:50:32 +0200 | [diff] [blame] | 82 | '&'	00-07	drivers/firewire/nosy-user.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 83 | '1'	00-1F	<linux/timepps.h>	PPS kit from Ulrich Windl | 
|  | 84 | <ftp://ftp.de.kernel.org/pub/linux/daemons/ntp/PPS/> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 85 | '2'	01-04	linux/i2o.h | 
|  | 86 | '3'	00-0F	drivers/s390/char/raw3270.h	conflict! | 
|  | 87 | '3'	00-1F	linux/suspend_ioctls.h	conflict! | 
|  | 88 | and kernel/power/user.c | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 89 | '8'	all				SNP8023 advanced NIC card | 
|  | 90 | <mailto:mcr@solidum.com> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 91 | '@'	00-0F	linux/radeonfb.h	conflict! | 
|  | 92 | '@'	00-0F	drivers/video/aty/aty128fb.c	conflict! | 
|  | 93 | 'A'	00-1F	linux/apm_bios.h	conflict! | 
|  | 94 | 'A'	00-0F	linux/agpgart.h		conflict! | 
|  | 95 | and drivers/char/agp/compat_ioctl.h | 
|  | 96 | 'A'	00-7F	sound/asound.h		conflict! | 
|  | 97 | 'B'	00-1F	linux/cciss_ioctl.h	conflict! | 
|  | 98 | 'B'	00-0F	include/linux/pmu.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 99 | 'B'	C0-FF				advanced bbus | 
|  | 100 | <mailto:maassen@uni-freiburg.de> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 101 | 'C'	all	linux/soundcard.h	conflict! | 
|  | 102 | 'C'	01-2F	linux/capi.h		conflict! | 
|  | 103 | 'C'	F0-FF	drivers/net/wan/cosa.h	conflict! | 
| Randy Dunlap | 07983f0 | 2009-01-06 14:42:41 -0800 | [diff] [blame] | 104 | 'D'	all	arch/s390/include/asm/dasd.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 105 | 'D'	40-5F	drivers/scsi/dpt/dtpi_ioctl.h | 
|  | 106 | 'D'	05	drivers/scsi/pmcraid.h | 
|  | 107 | 'E'	all	linux/input.h		conflict! | 
|  | 108 | 'E'	00-0F	xen/evtchn.h		conflict! | 
|  | 109 | 'F'	all	linux/fb.h		conflict! | 
|  | 110 | 'F'	01-02	drivers/scsi/pmcraid.h	conflict! | 
|  | 111 | 'F'	20	drivers/video/fsl-diu-fb.h	conflict! | 
|  | 112 | 'F'	20	drivers/video/intelfb/intelfb.h	conflict! | 
|  | 113 | 'F'	20	linux/ivtvfb.h		conflict! | 
|  | 114 | 'F'	20	linux/matroxfb.h	conflict! | 
|  | 115 | 'F'	20	drivers/video/aty/atyfb_base.c	conflict! | 
|  | 116 | 'F'	00-0F	video/da8xx-fb.h	conflict! | 
|  | 117 | 'F'	80-8F	linux/arcfb.h		conflict! | 
|  | 118 | 'F'	DD	video/sstfb.h		conflict! | 
|  | 119 | 'G'	00-3F	drivers/misc/sgi-gru/grulib.h	conflict! | 
|  | 120 | 'G'	00-0F	linux/gigaset_dev.h	conflict! | 
|  | 121 | 'H'	00-7F	linux/hiddev.h		conflict! | 
|  | 122 | 'H'	00-0F	linux/hidraw.h		conflict! | 
|  | 123 | 'H'	00-0F	sound/asound.h		conflict! | 
|  | 124 | 'H'	20-40	sound/asound_fm.h	conflict! | 
|  | 125 | 'H'	80-8F	sound/sfnt_info.h	conflict! | 
|  | 126 | 'H'	10-8F	sound/emu10k1.h		conflict! | 
|  | 127 | 'H'	10-1F	sound/sb16_csp.h	conflict! | 
|  | 128 | 'H'	10-1F	sound/hda_hwdep.h	conflict! | 
|  | 129 | 'H'	40-4F	sound/hdspm.h		conflict! | 
|  | 130 | 'H'	40-4F	sound/hdsp.h		conflict! | 
|  | 131 | 'H'	90	sound/usb/usx2y/usb_stream.h | 
|  | 132 | 'H'	C0-F0	net/bluetooth/hci.h	conflict! | 
|  | 133 | 'H'	C0-DF	net/bluetooth/hidp/hidp.h	conflict! | 
|  | 134 | 'H'	C0-DF	net/bluetooth/cmtp/cmtp.h	conflict! | 
|  | 135 | 'H'	C0-DF	net/bluetooth/bnep/bnep.h	conflict! | 
| Stefan Achatz | 5dc0c98 | 2011-02-03 16:14:43 +0100 | [diff] [blame] | 136 | 'H'	F1	linux/hid-roccat.h	<mailto:erazor_de@users.sourceforge.net> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 137 | 'I'	all	linux/isdn.h		conflict! | 
|  | 138 | 'I'	00-0F	drivers/isdn/divert/isdn_divert.h	conflict! | 
|  | 139 | 'I'	40-4F	linux/mISDNif.h		conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 140 | 'J'	00-1F	drivers/scsi/gdth_ioctl.h | 
|  | 141 | 'K'	all	linux/kd.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 142 | 'L'	00-1F	linux/loop.h		conflict! | 
|  | 143 | 'L'	10-1F	drivers/scsi/mpt2sas/mpt2sas_ctl.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 144 | 'L'	E0-FF	linux/ppdd.h		encrypted disk device driver | 
|  | 145 | <http://linux01.gwdg.de/~alatham/ppdd.html> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 146 | 'M'	all	linux/soundcard.h	conflict! | 
|  | 147 | 'M'	01-16	mtd/mtd-abi.h		conflict! | 
|  | 148 | and drivers/mtd/mtdchar.c | 
|  | 149 | 'M'	01-03	drivers/scsi/megaraid/megaraid_sas.h | 
|  | 150 | 'M'	00-0F	drivers/video/fsl-diu-fb.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 151 | 'N'	00-1F	drivers/usb/scanner.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 152 | 'O'     00-06   mtd/ubi-user.h		UBI | 
|  | 153 | 'P'	all	linux/soundcard.h	conflict! | 
|  | 154 | 'P'	60-6F	sound/sscape_ioctl.h	conflict! | 
|  | 155 | 'P'	00-0F	drivers/usb/class/usblp.c	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 156 | 'Q'	all	linux/soundcard.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 157 | 'R'	00-1F	linux/random.h		conflict! | 
|  | 158 | 'R'	01	linux/rfkill.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 159 | 'R'	C0-DF	net/bluetooth/rfcomm.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 160 | 'S'	all	linux/cdrom.h		conflict! | 
|  | 161 | 'S'	80-81	scsi/scsi_ioctl.h	conflict! | 
|  | 162 | 'S'	82-FF	scsi/scsi.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 163 | 'S'	00-7F	sound/asequencer.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 164 | 'T'	all	linux/soundcard.h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 165 | 'T'	00-AF	sound/asound.h		conflict! | 
| Randy Dunlap | 07983f0 | 2009-01-06 14:42:41 -0800 | [diff] [blame] | 166 | 'T'	all	arch/x86/include/asm/ioctls.h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 167 | 'T'	C0-DF	linux/if_tun.h		conflict! | 
|  | 168 | 'U'	all	sound/asound.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 169 | 'U'	00-CF	linux/uinput.h		conflict! | 
|  | 170 | 'U'	00-EF	linux/usbdevice_fs.h | 
|  | 171 | 'U'	C0-CF	drivers/bluetooth/hci_uart.h | 
|  | 172 | 'V'	all	linux/vt.h		conflict! | 
|  | 173 | 'V'	all	linux/videodev2.h	conflict! | 
|  | 174 | 'V'	C0	linux/ivtvfb.h		conflict! | 
|  | 175 | 'V'	C0	linux/ivtv.h		conflict! | 
|  | 176 | 'V'	C0	media/davinci/vpfe_capture.h	conflict! | 
|  | 177 | 'V'	C0	media/si4713.h		conflict! | 
|  | 178 | 'V'	C0-CF	drivers/media/video/mxb.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 179 | 'W'	00-1F	linux/watchdog.h	conflict! | 
|  | 180 | 'W'	00-1F	linux/wanrouter.h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 181 | 'W'	00-3F	sound/asound.h		conflict! | 
|  | 182 | 'X'	all	fs/xfs/xfs_fs.h		conflict! | 
|  | 183 | and fs/xfs/linux-2.6/xfs_ioctl32.h | 
|  | 184 | and include/linux/falloc.h | 
|  | 185 | and linux/fs.h | 
|  | 186 | 'X'	all	fs/ocfs2/ocfs_fs.h	conflict! | 
|  | 187 | 'X'	01	linux/pktcdvd.h		conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 188 | 'Y'	all	linux/cyclades.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 189 | 'Z'	14-15	drivers/message/fusion/mptctl.h | 
|  | 190 | '['	00-07	linux/usb/tmc.h		USB Test and Measurement Devices | 
| Greg Kroah-Hartman | 5b775f6 | 2008-08-26 16:22:06 -0700 | [diff] [blame] | 191 | <mailto:gregkh@suse.de> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 192 | 'a'	all	linux/atm*.h, linux/sonet.h	ATM on linux | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 193 | <http://lrcwww.epfl.ch/> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 194 | 'b'	00-FF				conflict! bit3 vme host bridge | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 195 | <mailto:natalia@nikhefk.nikhef.nl> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 196 | 'c'	all	linux/cm4000_cs.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 197 | 'c'	00-7F	linux/comstats.h	conflict! | 
|  | 198 | 'c'	00-7F	linux/coda.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 199 | 'c'	00-1F	linux/chio.h		conflict! | 
|  | 200 | 'c'	80-9F	arch/s390/include/asm/chsc.h	conflict! | 
|  | 201 | 'c'	A0-AF   arch/x86/include/asm/msr.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 202 | 'd'	00-FF	linux/char/drm/drm/h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 203 | 'd'	02-40	pcmcia/ds.h		conflict! | 
|  | 204 | 'd'	10-3F	drivers/media/video/dabusb.h	conflict! | 
|  | 205 | 'd'	C0-CF	drivers/media/video/saa7191.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 206 | 'd'	F0-FF	linux/digi1.h | 
|  | 207 | 'e'	all	linux/digi1.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 208 | 'e'	00-1F	drivers/net/irda/irtty-sir.h	conflict! | 
|  | 209 | 'f'	00-1F	linux/ext2_fs.h		conflict! | 
|  | 210 | 'f'	00-1F	linux/ext3_fs.h		conflict! | 
|  | 211 | 'f'	00-0F	fs/jfs/jfs_dinode.h	conflict! | 
|  | 212 | 'f'	00-0F	fs/ext4/ext4.h		conflict! | 
|  | 213 | 'f'	00-0F	linux/fs.h		conflict! | 
|  | 214 | 'f'	00-0F	fs/ocfs2/ocfs2_fs.h	conflict! | 
|  | 215 | 'g'	00-0F	linux/usb/gadgetfs.h | 
|  | 216 | 'g'	20-2F	linux/usb/g_printer.h | 
|  | 217 | 'h'	00-7F				conflict! Charon filesystem | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 218 | <mailto:zapman@interlan.net> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 219 | 'h'	00-1F	linux/hpet.h		conflict! | 
|  | 220 | 'i'	00-3F	linux/i2o-dev.h		conflict! | 
|  | 221 | 'i'	0B-1F	linux/ipmi.h		conflict! | 
|  | 222 | 'i'	80-8F	linux/i8k.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 223 | 'j'	00-3F	linux/joystick.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 224 | 'k'	00-0F	linux/spi/spidev.h	conflict! | 
|  | 225 | 'k'	00-05	video/kyro.h		conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 226 | 'l'	00-3F	linux/tcfs_fs.h		transparent cryptographic file system | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 227 | <http://web.archive.org/web/*/http://mikonos.dia.unisa.it/tcfs> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 228 | 'l'	40-7F	linux/udf_fs_i.h	in development: | 
| Randy Dunlap | 98766fb | 2005-11-21 21:32:31 -0800 | [diff] [blame] | 229 | <http://sourceforge.net/projects/linux-udf/> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 230 | 'm'	00-09	linux/mmtimer.h		conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 231 | 'm'	all	linux/mtio.h		conflict! | 
|  | 232 | 'm'	all	linux/soundcard.h	conflict! | 
|  | 233 | 'm'	all	linux/synclink.h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 234 | 'm'	00-19	drivers/message/fusion/mptctl.h	conflict! | 
|  | 235 | 'm'	00	drivers/scsi/megaraid/megaraid_ioctl.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 236 | 'm'	00-1F	net/irda/irmod.h	conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 237 | 'n'	00-7F	linux/ncp_fs.h and fs/ncpfs/ioctl.c | 
| Ryusuke Konishi | 1392e3b | 2009-08-08 17:52:50 +0900 | [diff] [blame] | 238 | 'n'	80-8F	linux/nilfs2_fs.h	NILFS2 | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 239 | 'n'	E0-FF	linux/matroxfb.h	matroxfb | 
| Tao Ma | 7f68fc2 | 2007-12-18 15:46:37 +0800 | [diff] [blame] | 240 | 'o'	00-1F	fs/ocfs2/ocfs2_fs.h	OCFS2 | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 241 | 'o'     00-03   mtd/ubi-user.h		conflict! (OCFS2 and UBI overlaps) | 
|  | 242 | 'o'     40-41   mtd/ubi-user.h		UBI | 
|  | 243 | 'o'     01-A1   linux/dvb/*.h		DVB | 
| Jiri Slaby | cef2cf0 | 2007-05-08 00:31:45 -0700 | [diff] [blame] | 244 | 'p'	00-0F	linux/phantom.h		conflict! (OpenHaptics needs this) | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 245 | 'p'	00-1F	linux/rtc.h		conflict! | 
| Jiri Slaby | cef2cf0 | 2007-05-08 00:31:45 -0700 | [diff] [blame] | 246 | 'p'	00-3F	linux/mc146818rtc.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 247 | 'p'	40-7F	linux/nvram.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 248 | 'p'	80-9F	linux/ppdev.h		user-space parport | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 249 | <mailto:tim@cyberelk.net> | 
| Alexander Gordeev | 717c033 | 2011-01-12 17:00:58 -0800 | [diff] [blame] | 250 | 'p'	A1-A5	linux/pps.h		LinuxPPS | 
| Rodolfo Giometti | eae9d2b | 2009-06-17 16:28:37 -0700 | [diff] [blame] | 251 | <mailto:giometti@linux.it> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 252 | 'q'	00-1F	linux/serio.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 253 | 'q'	80-FF	linux/telephony.h	Internet PhoneJACK, Internet LineJACK | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 254 | linux/ixjuser.h		<http://web.archive.org/web/*/http://www.quicknet.net> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 255 | 'r'	00-1F	linux/msdos_fs.h and fs/fat/dir.c | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 256 | 's'	all	linux/cdk.h | 
|  | 257 | 't'	00-7F	linux/if_ppp.h | 
|  | 258 | 't'	80-8F	linux/isdn_ppp.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 259 | 't'	90	linux/toshiba.h | 
| Arnd Bergmann | 2116b7a | 2010-10-04 22:55:57 +0200 | [diff] [blame] | 260 | 'u'	00-1F	linux/smb_fs.h		gone | 
| Laurent Pinchart | 5f70881 | 2010-11-21 17:15:44 -0300 | [diff] [blame] | 261 | 'u'	20-3F	linux/uvcvideo.h	USB video class host driver | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 262 | 'v'	00-1F	linux/ext2_fs.h		conflict! | 
|  | 263 | 'v'	00-1F	linux/fs.h		conflict! | 
|  | 264 | 'v'	00-0F	linux/sonypi.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 265 | 'v'	C0-DF	media/pwc-ioctl.h	conflict! | 
|  | 266 | 'v'	C0-FF	linux/meye.h		conflict! | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 267 | 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 268 | 'w'	all				CERN SCI driver | 
|  | 269 | 'y'	00-1F				packet based user level communications | 
|  | 270 | <mailto:zapman@interlan.net> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 271 | 'z'	00-3F				CAN bus card	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 272 | <mailto:hdstich@connectu.ulm.circular.de> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 273 | 'z'	40-7F				CAN bus card	conflict! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 274 | <mailto:oe@port.de> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 275 | 'z'	10-4F	drivers/s390/crypto/zcrypt_api.h	conflict! | 
| Laurent Pinchart | 474966e | 2011-03-05 17:14:33 -0300 | [diff] [blame] | 276 | '|'	00-7F	linux/media.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 277 | 0x80	00-1F	linux/fb.h | 
| Randy Dunlap | 07983f0 | 2009-01-06 14:42:41 -0800 | [diff] [blame] | 278 | 0x89	00-06	arch/x86/include/asm/sockios.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 279 | 0x89	0B-DF	linux/sockios.h | 
|  | 280 | 0x89	E0-EF	linux/sockios.h		SIOCPROTOPRIVATE range | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 281 | 0x89	E0-EF	linux/dn.h		PROTOPRIVATE range | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 282 | 0x89	F0-FF	linux/sockios.h		SIOCDEVPRIVATE range | 
|  | 283 | 0x8B	all	linux/wireless.h | 
|  | 284 | 0x8C	00-3F				WiNRADiO driver | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 285 | <http://www.winradio.com.au/> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 286 | 0x90	00	drivers/cdrom/sbpcd.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 287 | 0x92	00-0F	drivers/usb/mon/mon_bin.c | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 288 | 0x93	60-7F	linux/auto_fs.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 289 | 0x94	all	fs/btrfs/ioctl.h | 
| Linus Torvalds | fc7f99c | 2010-03-19 09:43:06 -0700 | [diff] [blame] | 290 | 0x97	00-7F	fs/ceph/ioctl.h		Ceph file system | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 291 | 0x99	00-0F				537-Addinboard driver | 
|  | 292 | <mailto:buk@buks.ipn.de> | 
|  | 293 | 0xA0	all	linux/sdp/sdp.h		Industrial Device Project | 
|  | 294 | <mailto:kenji@bitgate.com> | 
|  | 295 | 0xA3	80-8F	Port ACL		in development: | 
|  | 296 | <mailto:tlewis@mindspring.com> | 
|  | 297 | 0xA3	90-9F	linux/dtlk.h | 
|  | 298 | 0xAB	00-1F	linux/nbd.h | 
|  | 299 | 0xAC	00-1F	linux/raw.h | 
|  | 300 | 0xAD	00	Netfilter device	in development: | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 301 | <mailto:rusty@rustcorp.com.au> | 
| Avi Kivity | 258ac8e | 2008-04-06 14:25:46 +0300 | [diff] [blame] | 302 | 0xAE	all	linux/kvm.h		Kernel-based Virtual Machine | 
| Amit Shah | 0aaeb3b | 2009-08-13 20:05:48 +0530 | [diff] [blame] | 303 | <mailto:kvm@vger.kernel.org> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 304 | 0xB0	all	RATIO devices		in development: | 
|  | 305 | <mailto:vgo@ratio.de> | 
|  | 306 | 0xB1	00-1F	PPPoX			<mailto:mostrows@styx.uwaterloo.ca> | 
| John Calixto | cb87ea2 | 2011-04-26 18:56:29 -0400 | [diff] [blame] | 307 | 0xB3	00	linux/mmc/ioctl.h | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 308 | 0xC0	00-0F	linux/usb/iowarrior.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 309 | 0xCB	00-1F	CBM serial IEC bus	in development: | 
|  | 310 | <mailto:michael.klein@puffin.lb.shuttle.de> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 311 | 0xCD	01	linux/reiserfs_fs.h | 
|  | 312 | 0xCF	02	fs/cifs/ioctl.c | 
|  | 313 | 0xDB	00-0F	drivers/char/mwave/mwavepub.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 314 | 0xDD	00-3F	ZFCP device driver	see drivers/s390/scsi/ | 
|  | 315 | <mailto:aherrman@de.ibm.com> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 316 | 0xF3	00-3F	drivers/usb/misc/sisusbvga/sisusb.h	sisfb (in development) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 317 | <mailto:thomas@winischhofer.net> | 
| Raphael Assenat | 1ce4d39 | 2006-12-08 02:40:37 -0800 | [diff] [blame] | 318 | 0xF4	00-1F	video/mbxfb.h		mbxfb | 
|  | 319 | <mailto:raph@8d.com> | 
| Randy Dunlap | cb5a8b2 | 2010-01-08 14:42:34 -0800 | [diff] [blame] | 320 | 0xFD	all	linux/dm-ioctl.h |