File: /usr/src/linux/include/linux/major.h

1     #ifndef _LINUX_MAJOR_H
2     #define _LINUX_MAJOR_H
3     
4     /*
5      * This file has definitions for major device numbers.
6      * For the device number assignments, see Documentation/devices.txt.
7      */
8     
9     /* limits */
10     
11     /*
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.
14      */
15     #define MAX_CHRDEV	255
16     #define MAX_BLKDEV	255
17     
18     #define UNNAMED_MAJOR	0
19     #define MEM_MAJOR	1
20     #define RAMDISK_MAJOR	1
21     #define FLOPPY_MAJOR	2
22     #define PTY_MASTER_MAJOR 2
23     #define IDE0_MAJOR	3
24     #define PTY_SLAVE_MAJOR 3
25     #define HD_MAJOR	IDE0_MAJOR
26     #define TTY_MAJOR	4
27     #define TTYAUX_MAJOR	5
28     #define LP_MAJOR	6
29     #define VCS_MAJOR	7
30     #define LOOP_MAJOR	7
31     #define SCSI_DISK0_MAJOR 8
32     #define SCSI_TAPE_MAJOR	9
33     #define MD_MAJOR        9
34     #define MISC_MAJOR	10
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
50     #define DIGI_MAJOR 23
51     #define IDE1_MAJOR	22
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
63     #define ACSI_MAJOR	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
68     #define IDE2_MAJOR	33
69     #define IDE3_MAJOR	34
70     #define XPRAM_MAJOR     35      /* expanded storage on S/390 = "slow ram" */
71                                     /* proposed by Peter                      */
72     #define NETLINK_MAJOR	36
73     #define PS2ESDI_MAJOR	36
74     #define IDETAPE_MAJOR	37
75     #define Z2RAM_MAJOR	37
76     #define APBLOCK_MAJOR   38   /* AP1000 Block device */
77     #define DDV_MAJOR       39   /* AP1000 DDV block device */
78     #define NBD_MAJOR	43   /* Network block device	*/
79     #define RISCOM8_NORMAL_MAJOR 48
80     #define DAC960_MAJOR	48	/* 48..55 */
81     #define RISCOM8_CALLOUT_MAJOR 49
82     #define MKISS_MAJOR	55
83     #define DSP56K_MAJOR    55   /* DSP56001 processor device */
84     
85     #define IDE4_MAJOR	56
86     #define IDE5_MAJOR	57
87     
88     #define LVM_BLK_MAJOR	58	/* Logical Volume Manager */
89     
90     #define SCSI_DISK1_MAJOR	65
91     #define SCSI_DISK2_MAJOR	66
92     #define SCSI_DISK3_MAJOR	67
93     #define SCSI_DISK4_MAJOR	68
94     #define SCSI_DISK5_MAJOR	69
95     #define SCSI_DISK6_MAJOR	70
96     #define SCSI_DISK7_MAJOR	71
97     
98     
99     #define COMPAQ_SMART2_MAJOR	72
100     #define COMPAQ_SMART2_MAJOR1	73
101     #define COMPAQ_SMART2_MAJOR2	74
102     #define COMPAQ_SMART2_MAJOR3	75
103     #define COMPAQ_SMART2_MAJOR4	76
104     #define COMPAQ_SMART2_MAJOR5	77
105     #define COMPAQ_SMART2_MAJOR6	78
106     #define COMPAQ_SMART2_MAJOR7	79
107     
108     #define SPECIALIX_NORMAL_MAJOR 75
109     #define SPECIALIX_CALLOUT_MAJOR 76
110     
111     #define COMPAQ_CISS_MAJOR 	104
112     #define COMPAQ_CISS_MAJOR1	105
113     #define COMPAQ_CISS_MAJOR2      106
114     #define COMPAQ_CISS_MAJOR3      107
115     #define COMPAQ_CISS_MAJOR4      108
116     #define COMPAQ_CISS_MAJOR5      109
117     #define COMPAQ_CISS_MAJOR6      110
118     #define COMPAQ_CISS_MAJOR7      111
119     
120     #define ATARAID_MAJOR		114
121     
122     #define DASD_MAJOR      94	/* Official assignations from Peter */
123     
124     #define MDISK_MAJOR     95	/* Official assignations from Peter */
125     
126     #define I2O_MAJOR		80	/* 80->87 */
127     
128     #define IDE6_MAJOR	88
129     #define IDE7_MAJOR	89
130     #define IDE8_MAJOR	90
131     #define IDE9_MAJOR	91
132     
133     #define UBD_MAJOR	98
134     
135     #define AURORA_MAJOR 79
136     
137     #define JSFD_MAJOR	99
138     
139     #define PHONE_MAJOR	100
140     
141     #define LVM_CHAR_MAJOR	109	/* Logical Volume Manager */
142     
143     #define RTF_MAJOR	150
144     #define RAW_MAJOR	162
145     
146     #define USB_ACM_MAJOR		166
147     #define USB_ACM_AUX_MAJOR	167
148     #define USB_CHAR_MAJOR		180
149     
150     #define UNIX98_PTY_MASTER_MAJOR	128
151     #define UNIX98_PTY_MAJOR_COUNT	8
152     #define UNIX98_PTY_SLAVE_MAJOR	(UNIX98_PTY_MASTER_MAJOR+UNIX98_PTY_MAJOR_COUNT)
153     
154     #define VXVM_MAJOR		199	/* VERITAS volume i/o driver    */
155     #define VXSPEC_MAJOR		200	/* VERITAS volume config driver */
156     #define VXDMP_MAJOR		201	/* VERITAS volume multipath driver */
157     
158     #define MSR_MAJOR		202
159     #define CPUID_MAJOR		203
160     
161     #define OSST_MAJOR	206	/* OnStream-SCx0 SCSI tape */
162     
163     #define IBM_TTY3270_MAJOR       227	/* Official allocations now */
164     #define IBM_FS3270_MAJOR        228
165     
166     /*
167      * Tests for SCSI devices.
168      */
169     
170     #define SCSI_DISK_MAJOR(M) ((M) == SCSI_DISK0_MAJOR || \
171       ((M) >= SCSI_DISK1_MAJOR && (M) <= SCSI_DISK7_MAJOR))
172       
173     #define SCSI_BLK_MAJOR(M) \
174       (SCSI_DISK_MAJOR(M)	\
175        || (M) == SCSI_CDROM_MAJOR)
176     
177     static __inline__ int scsi_blk_major(int m) {
178     	return SCSI_BLK_MAJOR(m);
179     }
180     
181     /*
182      * Tests for IDE devices
183      */
184     #define IDE_DISK_MAJOR(M)	((M) == IDE0_MAJOR || (M) == IDE1_MAJOR || \
185     				(M) == IDE2_MAJOR || (M) == IDE3_MAJOR || \
186     				(M) == IDE4_MAJOR || (M) == IDE5_MAJOR || \
187     				(M) == IDE6_MAJOR || (M) == IDE7_MAJOR || \
188     				(M) == IDE8_MAJOR || (M) == IDE9_MAJOR)
189     
190     static __inline__ int ide_blk_major(int m)
191     {
192     	return IDE_DISK_MAJOR(m);
193     }
194     
195     #endif
196