11.2Sandvar/*	$NetBSD: majors+minors,v 1.2 2022/04/07 20:23:44 andvar Exp $	*/
21.1Sreinoud
31.1Sreinoud/*
41.1Sreinoud * Copyright (c) 19941198 Mark Brinicombe.
51.1Sreinoud * All rights reserved.
61.1Sreinoud *
71.1Sreinoud * Redistribution and use in source and binary forms, with or without
81.1Sreinoud * modification, are permitted provided that the following conditions
91.1Sreinoud * are met:
101.1Sreinoud * 1. Redistributions of source code must retain the above copyright
111.1Sreinoud *    notice, this list of conditions and the following disclaimer.
121.1Sreinoud * 2. Redistributions in binary form must reproduce the above copyright
131.1Sreinoud *    notice, this list of conditions and the following disclaimer in the
141.1Sreinoud *    documentation and/or other materials provided with the distribution.
151.1Sreinoud * 3. All advertising materials mentioning features or use of this software
161.1Sreinoud *    must display the following acknowledgement:
171.1Sreinoud *	This product includes software developed by Mark Brinicombe
181.1Sreinoud *	for the NetBSD Project.
191.1Sreinoud * 4. The name of the company nor the name of the author may be used to
201.1Sreinoud *    endorse or promote products derived from this software without specific
211.1Sreinoud *    prior written permission.
221.1Sreinoud *
231.1Sreinoud * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
241.1Sreinoud * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
251.1Sreinoud * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
261.1Sreinoud * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
271.1Sreinoud * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
281.1Sreinoud * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
291.1Sreinoud * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
301.1Sreinoud * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
311.1Sreinoud * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
321.1Sreinoud * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
331.1Sreinoud * SUCH DAMAGE.
341.1Sreinoud *
351.1Sreinoud * list of all allocated major numbers
361.1Sreinoud *
371.1Sreinoud * Created      : 17/09/94
381.1Sreinoud */
391.1Sreinoud
401.1SreinoudList of allocated and reserved major and minor numbers
411.1Sreinoud
421.1SreinoudThe block and character major numbers are ALWAYS allocated together to the
431.1Sreinoudsame device driver even if the driver does not require both.
441.1Sreinoud 
451.1Sreinoud 0 B 	- reserved
461.1Sreinoud 0 C	- memory device
471.1Sreinoud	  minor = 0 - /dev/mem
481.1Sreinoud	  minor = 1 - /dev/kmem
491.1Sreinoud	  minor = 2 - /dev/null
501.1Sreinoud	  minor = 3 - /dev/zero
511.1Sreinoud 1 B	- swap device
521.2Sandvar 1 C	- pseudo swap device
531.1Sreinoud	  minor = 0 - /dev/drum
541.1Sreinoud 2 B	- reserved
551.1Sreinoud 2 C	- console device
561.1Sreinoud	  minor = 0 - /dev/console
571.1Sreinoud 3 B	- reserved
581.1Sreinoud 3 C	- controlling terminal
591.1Sreinoud	  minor = 0 - /dev/tty
601.1Sreinoud 4 B	- reserved
611.1Sreinoud 4 C	- virtual console
621.1Sreinoud	  /dev/ttyv{unit}
631.1Sreinoud	  unit = minor
641.1Sreinoud 5 B	- reserved
651.1Sreinoud 5 C	- kernel log device
661.1Sreinoud	  minor = 0 - /dev/klog
671.1Sreinoud 6 B	- reserved
681.2Sandvar 6 C	- pseudo tty master
691.1Sreinoud	  /dev/pty{class}{unit}
701.1Sreinoud	  unit = minor % 16
711.1Sreinoud	  minor / 16 = 0 - class = p
721.1Sreinoud	  minor / 16 = 1 - class = q
731.1Sreinoud	  minor / 16 = 2 - class = r
741.1Sreinoud	  minor / 16 = 3 - class = s
751.1Sreinoud	  minor / 16 = 4 - class = t
761.1Sreinoud 7 B	- reserved
771.2Sandvar 7 C	- pseudo tty slave
781.1Sreinoud	  /dev/tty{class}{unit}
791.1Sreinoud	  unit = minor % 16
801.1Sreinoud	  minor / 16 = 0 - class = p
811.1Sreinoud	  minor / 16 = 1 - class = q
821.1Sreinoud	  minor / 16 = 2 - class = r
831.1Sreinoud	  minor / 16 = 3 - class = s
841.1Sreinoud	  minor / 16 = 4 - class = t
851.1Sreinoud 8 B	- reserved
861.1Sreinoud 8 C	- parallel printer
871.1Sreinoud	  /dev/lp{class}{unit}
881.1Sreinoud	  unit = minor & 0x1f
891.1Sreinoud	  minor & 0x80 = 0x00 - class = t - interrupt driver
901.1Sreinoud	  minor & 0x80 = 0x80 - class = a - polling driver
911.1Sreinoud	  e.g.
921.1Sreinoud	    0 - /dev/lpt0
931.1Sreinoud	  128 - /dev/lpa0
941.1Sreinoud 9 B	- reserved
951.1Sreinoud 9 C	- quadrature mouse
961.1Sreinoud	  minor = 0 - /dev/quadmouse
971.1Sreinoud10 B	- reserved
981.1Sreinoud10 C	- beep device
991.1Sreinoud	  minor = 0 - /dev/beep
1001.1Sreinoud11 B	- reserved
1011.1Sreinoud11 C	- keyboard device
1021.1Sreinoud	  minor = 0 - /dev/kbd
1031.1Sreinoud12 B	- reserved
1041.1Sreinoud12 C	- serial port
1051.1Sreinoud	  /dev/tty0{unit}
1061.1Sreinoud	  unit = minor
1071.1Sreinoud13 B	- reserver
1081.1Sreinoud13 C	- reserved
1091.1Sreinoud14 B	- reserved
1101.1Sreinoud14 C	- reserved
1111.1Sreinoud15 B	- reserved
1121.1Sreinoud15 C	- reserved
1131.1Sreinoud16 B	- ST506/ESDI/IDE disk
1141.1Sreinoud	  /dev/wd{unit}{partition}
1151.1Sreinoud	  partition = minor % 8
1161.1Sreinoud	  unit = minor / 8
1171.1Sreinoud16 C	- ST506/ESDI/IDE disk
1181.1Sreinoud	  /dev/rwd{unit}{partition}
1191.1Sreinoud	  partition = minor % 8
1201.1Sreinoud	  unit = minor / 8
1211.1Sreinoud17 B	- floppy disk
1221.1Sreinoud	  /dev/fd{unit}{partition}
1231.1Sreinoud	  partition = minor % 8
1241.1Sreinoud	  unit = minor / 8
1251.1Sreinoud17 C	- floppy disk
1261.1Sreinoud	  /dev/rfd{unit}{partition}
1271.1Sreinoud	  partition = minor % 8
1281.1Sreinoud	  unit = minor / 8
1291.1Sreinoud18 B	- ram disk
1301.1Sreinoud	  /dev/rd{unit}{partition}
1311.1Sreinoud	  partition = minor % 8
1321.1Sreinoud	  unit = minor / 8
1331.1Sreinoud18 C	- ram disk
1341.1Sreinoud	  /dev/rrd{unit}{partition}
1351.1Sreinoud	  partition = minor % 8
1361.1Sreinoud	  unit = minor / 8
1371.1Sreinoud19 B	- vnode disk driver
1381.1Sreinoud	  /dev/vnd{unit}{partition}
1391.1Sreinoud	  partition = minor % 8
1401.1Sreinoud	  unit = minor / 8
1411.1Sreinoud19 C	- vnode disk driver
1421.1Sreinoud	  /dev/rvnd{unit}{partition}
1431.1Sreinoud	  partition = minor % 8
1441.1Sreinoud	  unit = minor / 8
1451.1Sreinoud20 B	- reserved (ATAPI CDROM)
1461.1Sreinoud	  /dev/acd{unit}{partition}
1471.1Sreinoud	  partition = minor % 8
1481.1Sreinoud	  unit = minor / 8
1491.1Sreinoud20 C	- reserved (ATAPI CDROM)
1501.1Sreinoud	  /dev/racd{unit}{partition}
1511.1Sreinoud	  partition = minor % 8
1521.1Sreinoud	  unit = minor / 8
1531.1Sreinoud21 B	- concatenated disk driver
1541.1Sreinoud	  /dev/ccd{unit}{partition}
1551.1Sreinoud	  partition = minor % 8
1561.1Sreinoud	  unit = minor / 8
1571.1Sreinoud21 C	- concatenated disk driver
1581.1Sreinoud	  /dev/rccd{unit}{partition}
1591.1Sreinoud	  partition = minor % 8
1601.1Sreinoud	  unit = minor / 8
1611.1Sreinoud22 B	- reserved
1621.1Sreinoud22 C	- reserved
1631.1Sreinoud23 B	- reserved
1641.1Sreinoud23 C	- reserved
1651.1Sreinoud24 B	- SCSI disk
1661.1Sreinoud	  /dev/sd{unit}{partition}
1671.1Sreinoud	  partition = minor % 8
1681.1Sreinoud	  unit = minor / 8
1691.1Sreinoud24 C	- SCSI disk
1701.1Sreinoud	  /dev/rsd{unit}{partition}
1711.1Sreinoud	  partition = minor % 8
1721.1Sreinoud	  unit = minor / 8
1731.1Sreinoud25 B	- SCSI tape
1741.1Sreinoud25 C	- SCSI tape
1751.1Sreinoud26 B	- SCSI cdrom
1761.1Sreinoud	  /dev/cd{unit}{partition}
1771.1Sreinoud	  partition = minor % 8
1781.1Sreinoud	  unit = minor / 8
1791.1Sreinoud26 C	- SCSI cdrom
1801.1Sreinoud	  /dev/rcd{unit}{partition}
1811.1Sreinoud	  partition = minor % 8
1821.1Sreinoud	  unit = minor / 8
1831.1Sreinoud27 B	- reserved
1841.1Sreinoud27 C	- SCSI autochanger
1851.1Sreinoud	  /dev/ch{unit}
1861.1Sreinoud	  unit = minor
1871.1Sreinoud28 B	- reserved
1881.1Sreinoud28 C	- SCSI unknown device
1891.1Sreinoud	  /dev/uk{unit}
1901.1Sreinoud	  unit = minor
1911.1Sreinoud29 B	- reserved
1921.1Sreinoud29 C	- SCSI scanner device
1931.1Sreinoud	  /dev/ss{unit}
1941.1Sreinoud	  unit = minor
1951.1Sreinoud30 B	- reserved
1961.1Sreinoud30 C	- reserved
1971.1Sreinoud31 B	- reserved
1981.1Sreinoud31 C	- reserved
1991.1Sreinoud32 B	- reserved
2001.1Sreinoud32 C	- Berkeley packet filter
2011.1Sreinoud	  /dev/bpf{unit}
2021.1Sreinoud	  unit = minor
2031.1Sreinoud	  minor = 0 - /dev/bpf0
2041.1Sreinoud	  minor = 1 - /dev/bpf1
2051.1Sreinoud	  minor = 2 - /dev/bpf2
2061.1Sreinoud	  minor = 3 - /dev/bpf3
2071.1Sreinoud33 B	- reserved
2081.1Sreinoud33 C	- network tunnel
2091.1Sreinoud	  /dev/tun{unit}
2101.1Sreinoud	  unit = minor
2111.1Sreinoud	  minor = 0 - /dev/tun0
2121.1Sreinoud	  minor = 1 - /dev/tun1
2131.1Sreinoud	  minor = 2 - /dev/tun2
2141.1Sreinoud34 B	- reserved
2151.1Sreinoud34 C	- file descriptor pseudo-device
2161.1Sreinoud	  minor = 0 - /dev/stdin
2171.1Sreinoud	  minor = 1 - /dev/stdout
2181.1Sreinoud	  minor = 2 - /dev/stderr
2191.1Sreinoud35 B	- reserved
2201.1Sreinoud35 C	- loadable module driver
2211.1Sreinoud	  minor = 0 - /dev/lkm
2221.1Sreinoud36 B	- reserved
2231.1Sreinoud36 C	- generic audio device
2241.1Sreinoud37 B	- reserved
2251.1Sreinoud37 C	- vidcconsole device
2261.1Sreinoud	  minor = 0 - /dev/vidcconsole
2271.1Sreinoud38 B	- reserved
2281.1Sreinoud38 C	- cpu/hydra
2291.1Sreinoud	  minor = 0 - /dev/cpu0
2301.1Sreinoud39 B	- reserved
2311.1Sreinoud39 C	- reserved
2321.1Sreinoud40 B	- reserved
2331.1Sreinoud40 C	- PS2 mouse
2341.1Sreinoud	  minor = 0 - /dev/pms
2351.1Sreinoud41 B	- reserved
2361.1Sreinoud41 C	- reserved
2371.1Sreinoud42 B	- reserved
2381.1Sreinoud42 C	- IIC device
2391.1Sreinoud43 B	- reserved
2401.1Sreinoud43 C	- RTC device
2411.1Sreinoud44 B	- reserved
2421.1Sreinoud44 C	- reserved (generic video)
2431.1Sreinoud		   (/dev/gfx{unit})
2441.1Sreinoud		   (unit = minor)
2451.1Sreinoud45 B	- reserved
2461.1Sreinoud45 C	- reserved (virtual console)
2471.1Sreinoud		   (/dev/ttyg{unit})
2481.1Sreinoud		   (unit = minor)
2491.1Sreinoud46 B	- reserved
2501.1Sreinoud46 C	- ip-filter
2511.1Sreinoud47	- reserved
2521.1Sreinoud48 B	- reserved
2531.1Sreinoud48 C	- S/PDIF
2541.1Sreinoud49 B	- reserved
2551.1Sreinoud49 C	- ofrom
2561.1Sreinoud50 B	- reserved
2571.1Sreinoud50 C	- smart card (/dev/scr)
2581.1Sreinoud51 B	- reserved
2591.1Sreinoud51 C	- reserved
2601.1Sreinoud52 B	- reserved
2611.1Sreinoud52 C	- random device
2621.1Sreinoud53 B	- reserved
2631.1Sreinoud53 C	- FIQ profiler
2641.1Sreinoud54 B	- reserved
2651.1Sreinoud54 C	- Footbridge diag serial 
2661.1Sreinoud	  minor = 0 - /dev/fcom
2671.1Sreinoud55 B	- reserved
2681.1Sreinoud55 C	- reserved for bypass device
2691.1Sreinoud56 B	- reserved
2701.1Sreinoud56 C	- ISA jostick
2711.1Sreinoud57 B	- reserved
2721.1Sreinoud57 C	- MIDI I/O
2731.1Sreinoud58 B	- reserved
2741.1Sreinoud58 C	- Sequencer I/O
2751.1Sreinoud59 B	- reserved
2761.1Sreinoud59 C	- reserved for CODA
2771.1Sreinoud60 B	- reserved
2781.1Sreinoud60 C	- wsdisplay device
2791.1Sreinoud61 B	- reserved
2801.1Sreinoud61 C	- wskbd device
2811.1Sreinoud62 B	- reserved
2821.1Sreinoud62 C	- wsmouse device
2831.1Sreinoud63 B	- reserved
2841.1Sreinoud63 C	- reserved
2851.1Sreinoud64 B	- reserved
2861.1Sreinoud64 C	- USB controller
2871.1Sreinoud65 B	- reserved
2881.1Sreinoud65 C	- USB HID
2891.1Sreinoud66 B	- reserved
2901.1Sreinoud66 C	- USB printer
2911.1Sreinoud67 B	- reserved
2921.1Sreinoud67 C	- reserved
2931.1Sreinoud68 B	- reserved
2941.1Sreinoud68 C	- reserved
2951.1Sreinoud69 B	- reserved
2961.1Sreinoud69 C	- reserved
2971.1Sreinoud
2981.1Sreinoud70+ free for allocation
299