sid.h revision 1.7 1 /* $NetBSD: sid.h,v 1.7 1996/07/20 17:58:23 ragge Exp $ */
2
3 /*
4 * Copyright (c) 1994 Ludd, University of Lule}, Sweden.
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * 3. All advertising materials mentioning features or use of this software
16 * must display the following acknowledgement:
17 * This product includes software developed at Ludd, University of Lule}.
18 * 4. The name of the author may not be used to endorse or promote products
19 * derived from this software without specific prior written permission
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
22 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
23 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
24 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
25 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
26 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32
33 #define VAX_MASSBUS 1
34 #define VAX_UNIBUS 2
35 #define VAX_CIBUS 4
36 #define VAX_Q22BUS 8
37 #define VAX_VSBUS 16
38 #define VAX_BIBUS 32
39 #define VAX_DSSIBUS 64
40 #define VAX_XMIBUS 128
41 #define VAX_TCBUS 256
42
43 /*
44 * Board-Type (?_BTYP_?) and Sub-Type (?_STYP_?) are synonima.
45 * other synonima are:
46 */
47 #define cpudata vax_cpudata
48 #define cputype vax_cputype
49 #define cpusubtype vax_boardtype
50
51 /*
52 * Chip CPU types / chip CPU Subtypes
53 *
54 * The type of a VAX is given by the high-order byte of the System
55 * identification register (SID) and describes families or series of VAXen.
56 * Board-Types/Sub-Types within series are described by the SIED register.
57 */
58
59 /*
60 * 700 series (1977)
61 */
62 #define VAX_TYP_780 1 /* VAX-11/780, 785, 782 */
63 #define VAX_TYP_750 2 /* VAX-11/750 */
64 #define VAX_TYP_730 3 /* VAX-11/730, 725 */
65 #define VAX_TYP_790 4 /* VAX 8600, 8650 */
66
67 #define VAX_BTYP_780 0x01000000 /* generic 11/780 */
68 #define VAX_BTYP_750 0x02000000 /* generic 11/750 */
69 #define VAX_BTYP_730 0x03000000 /* generic 11/730 */
70 #define VAX_BTYP_790 0x04000000 /* generic 11/790 */
71
72 /*
73 * 8000 series (1986)
74 */
75 #define VAX_TYP_8SS 5 /* VAX 8200, 8300, 8250, 8350, VS 8000 */
76 #define VAX_TYP_8NN 6 /* VAX 8530, 8550, 8700, 8800 */
77
78 #define VAX_BTYP_8000 0x05000000 /* generic VAX 8000 */
79
80 #define VAX_BTYP_8800 0x06000000 /* generic Nautilus */
81 #define VAX_BTYP_8700 0x06000001
82 #define VAX_BTYP_8550 0x06000006
83 #define VAX_BTYP_8500 0x06000007
84
85 /*
86 * MicroVAX I (1984)
87 */
88 #define VAX_TYP_UV1 7 /* MicroVAX I, VAXstation I */
89 /* VAX_TYP_610 7 */
90
91 #define VAX_BTYP_610 0x70000000 /* generic MicroVAX-I */
92
93 /*
94 * MicroVAX II series (1985)
95 */
96 #define VAX_TYP_UV2 8
97 /* VAX_TYP_78032 8 */
98
99 #define VAX_BTYP_630 0x08000001 /* MicroVAX II, VAXstation II */
100 #define VAX_BTYP_410 0x08000004 /* MicroVAX 2000, VAXstation 2000 */
101
102 /*
103 * CVAX chip series (1987)
104 */
105 #define VAX_TYP_CVAX 10
106 /* VAX_TYP_650 10 */
107
108
109 #define VAX_BTYP_650 0x0A000001 /* MicroVAX 3500, 3600 */
110 /* VAX_BTYP_65D 0x0A000001 /* VAXstation 3200, 3500 */
111 /* VAX_BTYP_640 0x0A000001 /* MicroVAX 3300, 3400 */
112 /* VAX_BTYP_655 0x0A000001 /* MicroVAX 3800, 3900 */
113 #define VAX_BTYP_9CC 0x0A000002 /* VAX 6000 model 210/310 */
114 #define VAX_BTYP_60 0x0A000003 /* VAXstation 3520, 3540 */
115 #define VAX_BTYP_420 0x0A000004 /* VAXstation 3100 models 10 - 48 */
116 #define VAX_BTYP_510 0x0A000007 /* VAXft model 110 */
117 /* VAX_BTYP_520 0x0A000007 /* VAXft model 310 */
118
119 /*
120 * Rigel chip series (1990)
121 */
122 #define VAX_TYP_RIGEL 11
123 /* VAX_TYP_9RR 11 */
124
125 #define VAX_BTYP_670 0x0B000001 /* VAX 4000 model 300 */
126 #define VAX_BTYP_9RR 0x0B000002 /* VAX 6000 model 410-460 */
127 #define VAX_BTYP_43 0x0B000004 /* VAXstation 3100 model 76 */
128
129 /*
130 * Aquarius series (1990)
131 */
132 #define VAX_TYP_9000 14
133
134 #define VAX_BTYP_9AR 0x0E00000? /* VAX 9000 models 210, 410-440 */
135 #define VAX_BTYP_9AQ 0x0E00000? /* VAX 9000 models 400-800 */
136
137 /*
138 * Polarstar series (1988)
139 */
140 #define VAX_TYP_8PS 17
141
142 #define VAX_BTYP_8PS 0x11000000 /* VAX 8810 to 8840 */
143
144 /*
145 * Mariah chip series (1991)
146 */
147 #define VAX_TYP_MARIAH 18
148 #define VAX_TYP_V12 18
149
150 #define VAX_BTYP_690 0x12000001 /* VAX 4000 model 400 */
151 #define VAX_BTYP_1202 0x12000002 /* VAX 6000 model 510-560 */
152 #define VAX_BTYP_46 0x12000004 /* VAXstation 4000/60, 3100/80 */
153
154 /*
155 * NVAX chip series (1991)
156 */
157 #define VAX_TYP_NVAX 19
158 #define VAX_TYP_V13 19
159
160 #define VAX_BTYP_69D 0x13000001 /* VAX 4000 model 500 */
161 #define VAX_BTYP_1301 0x13000001 /* VAX 4000 model 100 */
162 #define VAX_BTYP_1302 0x13000002
163 #define VAX_BTYP_1303 0x13000003
164 #define VAX_BTYP_49 0x13000004 /* MicroVAX 3100 model 90 */
165
166 /*
167 * SOC chip series (1991)
168 */
169 #define VAX_TYP_SOC 20
170 #define VAX_TYP_V14 20
171
172 #define VAX_BTYP_660 0x14000001 /* VAX 4000 model 200 */
173 #define VAX_BTYP_440 0x14000004 /* VS 4000/30, 3100/30, 3100/40 */
174 #define VAX_BTYP_550 0x14000007 /* VAXft model 410, 610 */
175
176 /*
177 * NVAX+ chip series (1991)
178 */
179 #define VAX_TYP_NVPLUS 23
180 #define VAX_TYP_V17 23
181
182 #define VAX_BTYP_1701 0x17000001
183
184 /*
185 * Highest Number supported by NetBSD/VAX
186 */
187 #define VAX_TYP_MAX VAX_TYP_RIGEL
188
189 /*
190 * compatibility with old names:
191 */
192
193 #define VAX_780 VAX_TYP_780
194 #define VAX_750 VAX_TYP_750
195 #define VAX_730 VAX_TYP_730
196 #define VAX_8600 VAX_TYP_790
197 #define VAX_8200 VAX_TYP_8SS
198 #define VAX_8800 VAX_TYP_8NN
199 #define VAX_610 VAX_TYP_UV1
200 #define VAX_78032 VAX_TYP_UV2
201 #define VAX_650 VAX_TYP_CVAX
202
203 /*
204 * Some common-used external variables.
205 */
206 extern int vax_cputype; /* general, highest byte of the SID-register */
207 extern int vax_cpudata; /* general, the contents of the SID-register */
208 extern int vax_siedata; /* contents of the SIE register */
209 extern int vax_bustype; /* HW-dep., setup at consinit() in ka???.c */
210 extern int vax_boardtype; /* HW-dep., msb of SID | SIE (SID-extension) */
211 extern int vax_confdata; /* HW-dep., hardware dependent config-data */
212
213