5 * This file has definitions for major device numbers.
6 * For the device number assignments, see Documentation/devices.txt.
12 * Important: Don't change this to 256. Major number 255 is and must be
13 * reserved for future expansion into a larger dev_t space.
15 #define MAX_CHRDEV 255
16 #define MAX_BLKDEV 255
18 #define UNNAMED_MAJOR 0
20 #define RAMDISK_MAJOR 1
21 #define FLOPPY_MAJOR 2
22 #define PTY_MASTER_MAJOR 2
24 #define PTY_SLAVE_MAJOR 3
25 #define HD_MAJOR IDE0_MAJOR
27 #define TTYAUX_MAJOR 5
31 #define SCSI_DISK0_MAJOR 8
32 #define SCSI_TAPE_MAJOR 9
35 #define SCSI_CDROM_MAJOR 11
36 #define QIC02_TAPE_MAJOR 12
37 #define XT_DISK_MAJOR 13
38 #define SOUND_MAJOR 14
39 #define CDU31A_CDROM_MAJOR 15
40 #define JOYSTICK_MAJOR 15
41 #define GOLDSTAR_CDROM_MAJOR 16
42 #define OPTICS_CDROM_MAJOR 17
43 #define SANYO_CDROM_MAJOR 18
44 #define CYCLADES_MAJOR 19
45 #define CYCLADESAUX_MAJOR 20
46 #define MITSUMI_X_CDROM_MAJOR 20
47 #define MFM_ACORN_MAJOR 21 /* ARM Linux /dev/mfm */
48 #define SCSI_GENERIC_MAJOR 21
49 #define Z8530_MAJOR 34
52 #define DIGICU_MAJOR 22
53 #define MITSUMI_CDROM_MAJOR 23
54 #define CDU535_CDROM_MAJOR 24
55 #define STL_SERIALMAJOR 24
56 #define MATSUSHITA_CDROM_MAJOR 25
57 #define STL_CALLOUTMAJOR 25
58 #define MATSUSHITA_CDROM2_MAJOR 26
59 #define QIC117_TAPE_MAJOR 27
60 #define MATSUSHITA_CDROM3_MAJOR 27
61 #define MATSUSHITA_CDROM4_MAJOR 28
62 #define STL_SIOMEMMAJOR 28
64 #define AZTECH_CDROM_MAJOR 29
65 #define GRAPHDEV_MAJOR 29 /* SparcLinux & Linux/68k /dev/fb */
66 #define SHMIQ_MAJOR 85 /* Linux/mips, SGI /dev/shmiq */
67 #define CM206_CDROM_MAJOR 32
70 #define NETLINK_MAJOR 36
71 #define PS2ESDI_MAJOR 36
72 #define IDETAPE_MAJOR 37
73 #define Z2RAM_MAJOR 37
74 #define APBLOCK_MAJOR 38 /* AP1000 Block device */
75 #define DDV_MAJOR 39 /* AP1000 DDV block device */
76 #define NBD_MAJOR 43 /* Network block device */
77 #define RISCOM8_NORMAL_MAJOR 48
78 #define DAC960_MAJOR 48 /* 48..55 */
79 #define RISCOM8_CALLOUT_MAJOR 49
80 #define MKISS_MAJOR 55
81 #define DSP56K_MAJOR 55 /* DSP56001 processor device */
86 #define LVM_BLK_MAJOR 58 /* Logical Volume Manager */
88 #define SCSI_DISK1_MAJOR 65
89 #define SCSI_DISK2_MAJOR 66
90 #define SCSI_DISK3_MAJOR 67
91 #define SCSI_DISK4_MAJOR 68
92 #define SCSI_DISK5_MAJOR 69
93 #define SCSI_DISK6_MAJOR 70
94 #define SCSI_DISK7_MAJOR 71
97 #define COMPAQ_SMART2_MAJOR 72
98 #define COMPAQ_SMART2_MAJOR1 73
99 #define COMPAQ_SMART2_MAJOR2 74
100 #define COMPAQ_SMART2_MAJOR3 75
101 #define COMPAQ_SMART2_MAJOR4 76
102 #define COMPAQ_SMART2_MAJOR5 77
103 #define COMPAQ_SMART2_MAJOR6 78
104 #define COMPAQ_SMART2_MAJOR7 79
106 #define SPECIALIX_NORMAL_MAJOR 75
107 #define SPECIALIX_CALLOUT_MAJOR 76
109 #define DASD_MAJOR 94 /* Official assignations from Peter */
111 #define MDISK_MAJOR 95 /* Official assignations from Peter */
113 #define I2O_MAJOR 80 /* 80->87 */
115 #define IDE6_MAJOR 88
116 #define IDE7_MAJOR 89
117 #define IDE8_MAJOR 90
118 #define IDE9_MAJOR 91
120 #define AURORA_MAJOR 79
122 #define JSFD_MAJOR 99
124 #define PHONE_MAJOR 100
126 #define LVM_CHAR_MAJOR 109 /* Logical Volume Manager */
128 #define RTF_MAJOR 150
129 #define RAW_MAJOR 162
131 #define USB_ACM_MAJOR 166
132 #define USB_ACM_AUX_MAJOR 167
133 #define USB_CHAR_MAJOR 180
135 #define UNIX98_PTY_MASTER_MAJOR 128
136 #define UNIX98_PTY_MAJOR_COUNT 8
137 #define UNIX98_PTY_SLAVE_MAJOR (UNIX98_PTY_MASTER_MAJOR+UNIX98_PTY_MAJOR_COUNT)
139 #define MSR_MAJOR 202
140 #define CPUID_MAJOR 203
143 * Tests for SCSI devices.
146 #define SCSI_DISK_MAJOR(M) ((M) == SCSI_DISK0_MAJOR || \
147 ((M) >= SCSI_DISK1_MAJOR && (M) <= SCSI_DISK7_MAJOR))
149 #define SCSI_BLK_MAJOR(M) \
150 (SCSI_DISK_MAJOR(M) \
151 || (M) == SCSI_CDROM_MAJOR)
153 static __inline__
int scsi_blk_major(int m
) {
154 return SCSI_BLK_MAJOR(m
);