/* $NetBSD: majors+minors,v 1.2 2022/04/07 20:23:44 andvar Exp $ */ /* * Copyright (c) 19941198 Mark Brinicombe. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by Mark Brinicombe * for the NetBSD Project. * 4. The name of the company nor the name of the author may be used to * endorse or promote products derived from this software without specific * prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * list of all allocated major numbers * * Created : 17/09/94 */ List of allocated and reserved major and minor numbers The block and character major numbers are ALWAYS allocated together to the same device driver even if the driver does not require both. 0 B - reserved 0 C - memory device minor = 0 - /dev/mem minor = 1 - /dev/kmem minor = 2 - /dev/null minor = 3 - /dev/zero 1 B - swap device 1 C - pseudo swap device minor = 0 - /dev/drum 2 B - reserved 2 C - console device minor = 0 - /dev/console 3 B - reserved 3 C - controlling terminal minor = 0 - /dev/tty 4 B - reserved 4 C - virtual console /dev/ttyv{unit} unit = minor 5 B - reserved 5 C - kernel log device minor = 0 - /dev/klog 6 B - reserved 6 C - pseudo tty master /dev/pty{class}{unit} unit = minor % 16 minor / 16 = 0 - class = p minor / 16 = 1 - class = q minor / 16 = 2 - class = r minor / 16 = 3 - class = s minor / 16 = 4 - class = t 7 B - reserved 7 C - pseudo tty slave /dev/tty{class}{unit} unit = minor % 16 minor / 16 = 0 - class = p minor / 16 = 1 - class = q minor / 16 = 2 - class = r minor / 16 = 3 - class = s minor / 16 = 4 - class = t 8 B - reserved 8 C - parallel printer /dev/lp{class}{unit} unit = minor & 0x1f minor & 0x80 = 0x00 - class = t - interrupt driver minor & 0x80 = 0x80 - class = a - polling driver e.g. 0 - /dev/lpt0 128 - /dev/lpa0 9 B - reserved 9 C - quadrature mouse minor = 0 - /dev/quadmouse 10 B - reserved 10 C - beep device minor = 0 - /dev/beep 11 B - reserved 11 C - keyboard device minor = 0 - /dev/kbd 12 B - reserved 12 C - serial port /dev/tty0{unit} unit = minor 13 B - reserver 13 C - reserved 14 B - reserved 14 C - reserved 15 B - reserved 15 C - reserved 16 B - ST506/ESDI/IDE disk /dev/wd{unit}{partition} partition = minor % 8 unit = minor / 8 16 C - ST506/ESDI/IDE disk /dev/rwd{unit}{partition} partition = minor % 8 unit = minor / 8 17 B - floppy disk /dev/fd{unit}{partition} partition = minor % 8 unit = minor / 8 17 C - floppy disk /dev/rfd{unit}{partition} partition = minor % 8 unit = minor / 8 18 B - ram disk /dev/rd{unit}{partition} partition = minor % 8 unit = minor / 8 18 C - ram disk /dev/rrd{unit}{partition} partition = minor % 8 unit = minor / 8 19 B - vnode disk driver /dev/vnd{unit}{partition} partition = minor % 8 unit = minor / 8 19 C - vnode disk driver /dev/rvnd{unit}{partition} partition = minor % 8 unit = minor / 8 20 B - reserved (ATAPI CDROM) /dev/acd{unit}{partition} partition = minor % 8 unit = minor / 8 20 C - reserved (ATAPI CDROM) /dev/racd{unit}{partition} partition = minor % 8 unit = minor / 8 21 B - concatenated disk driver /dev/ccd{unit}{partition} partition = minor % 8 unit = minor / 8 21 C - concatenated disk driver /dev/rccd{unit}{partition} partition = minor % 8 unit = minor / 8 22 B - reserved 22 C - reserved 23 B - reserved 23 C - reserved 24 B - SCSI disk /dev/sd{unit}{partition} partition = minor % 8 unit = minor / 8 24 C - SCSI disk /dev/rsd{unit}{partition} partition = minor % 8 unit = minor / 8 25 B - SCSI tape 25 C - SCSI tape 26 B - SCSI cdrom /dev/cd{unit}{partition} partition = minor % 8 unit = minor / 8 26 C - SCSI cdrom /dev/rcd{unit}{partition} partition = minor % 8 unit = minor / 8 27 B - reserved 27 C - SCSI autochanger /dev/ch{unit} unit = minor 28 B - reserved 28 C - SCSI unknown device /dev/uk{unit} unit = minor 29 B - reserved 29 C - SCSI scanner device /dev/ss{unit} unit = minor 30 B - reserved 30 C - reserved 31 B - reserved 31 C - reserved 32 B - reserved 32 C - Berkeley packet filter /dev/bpf{unit} unit = minor minor = 0 - /dev/bpf0 minor = 1 - /dev/bpf1 minor = 2 - /dev/bpf2 minor = 3 - /dev/bpf3 33 B - reserved 33 C - network tunnel /dev/tun{unit} unit = minor minor = 0 - /dev/tun0 minor = 1 - /dev/tun1 minor = 2 - /dev/tun2 34 B - reserved 34 C - file descriptor pseudo-device minor = 0 - /dev/stdin minor = 1 - /dev/stdout minor = 2 - /dev/stderr 35 B - reserved 35 C - loadable module driver minor = 0 - /dev/lkm 36 B - reserved 36 C - generic audio device 37 B - reserved 37 C - vidcconsole device minor = 0 - /dev/vidcconsole 38 B - reserved 38 C - cpu/hydra minor = 0 - /dev/cpu0 39 B - reserved 39 C - reserved 40 B - reserved 40 C - PS2 mouse minor = 0 - /dev/pms 41 B - reserved 41 C - reserved 42 B - reserved 42 C - IIC device 43 B - reserved 43 C - RTC device 44 B - reserved 44 C - reserved (generic video) (/dev/gfx{unit}) (unit = minor) 45 B - reserved 45 C - reserved (virtual console) (/dev/ttyg{unit}) (unit = minor) 46 B - reserved 46 C - ip-filter 47 - reserved 48 B - reserved 48 C - S/PDIF 49 B - reserved 49 C - ofrom 50 B - reserved 50 C - smart card (/dev/scr) 51 B - reserved 51 C - reserved 52 B - reserved 52 C - random device 53 B - reserved 53 C - FIQ profiler 54 B - reserved 54 C - Footbridge diag serial minor = 0 - /dev/fcom 55 B - reserved 55 C - reserved for bypass device 56 B - reserved 56 C - ISA jostick 57 B - reserved 57 C - MIDI I/O 58 B - reserved 58 C - Sequencer I/O 59 B - reserved 59 C - reserved for CODA 60 B - reserved 60 C - wsdisplay device 61 B - reserved 61 C - wskbd device 62 B - reserved 62 C - wsmouse device 63 B - reserved 63 C - reserved 64 B - reserved 64 C - USB controller 65 B - reserved 65 C - USB HID 66 B - reserved 66 C - USB printer 67 B - reserved 67 C - reserved 68 B - reserved 68 C - reserved 69 B - reserved 69 C - reserved 70+ free for allocation