1 /* $NetBSD: sid.h,v 1.21 2001/09/18 16:41:25 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 /* 34 * Board-Type (?_BTYP_?) and Sub-Type (?_STYP_?) are synonima. 35 * Michael Kukat changed this 01/27/2001, STYP is really a subtype now. 36 * other synonima are: 37 */ 38 #define cpudata vax_cpudata 39 #define cputype vax_cputype 40 #define cpusubtype vax_boardtype 41 42 /* 43 * Chip CPU types / chip CPU Subtypes 44 * 45 * The type of a VAX is given by the high-order byte of the System 46 * identification register (SID) and describes families or series of VAXen. 47 * Board-Types/Sub-Types within series are described by the SIED register. 48 */ 49 50 /* 51 * 700 series (1977) 52 */ 53 #define VAX_TYP_780 1 /* VAX-11/780, 785, 782 */ 54 #define VAX_TYP_750 2 /* VAX-11/750 */ 55 #define VAX_TYP_730 3 /* VAX-11/730, 725 */ 56 #define VAX_TYP_790 4 /* VAX 8600, 8650 */ 57 58 #define VAX_BTYP_780 0x01000000 /* generic 11/780 */ 59 #define VAX_BTYP_750 0x02000000 /* generic 11/750 */ 60 #define VAX_BTYP_730 0x03000000 /* generic 11/730 */ 61 #define VAX_BTYP_790 0x04000000 /* generic 11/790 */ 62 63 /* 64 * 8000 series (1986) 65 */ 66 #define VAX_TYP_8SS 5 /* VAX 8200, 8300, 8250, 8350, VS 8000 */ 67 #define VAX_TYP_8NN 6 /* VAX 8530, 8550, 8700, 8800 */ 68 69 #define VAX_BTYP_8000 0x05000000 /* generic VAX 8000 */ 70 71 #define VAX_BTYP_8800 0x06000000 /* generic Nautilus */ 72 #define VAX_BTYP_8700 0x06000001 73 #define VAX_BTYP_8550 0x06000006 74 #define VAX_BTYP_8500 0x06000007 75 76 /* 77 * MicroVAX I (1984) 78 */ 79 #define VAX_TYP_UV1 7 /* MicroVAX I, VAXstation I */ 80 /* VAX_TYP_610 7 */ 81 82 #define VAX_BTYP_610 0x07000000 /* generic MicroVAX-I */ 83 84 /* 85 * MicroVAX II series (1985) 86 */ 87 #define VAX_TYP_UV2 8 88 /* VAX_TYP_78032 8 */ 89 90 #define VAX_BTYP_630 0x08000001 /* MicroVAX II, VAXstation II */ 91 #define VAX_BTYP_410 0x08000004 /* MicroVAX 2000, VAXstation 2000 */ 92 93 /* 94 * CVAX chip series (1987) 95 */ 96 #define VAX_TYP_CVAX 10 97 /* VAX_TYP_650 10 */ 98 99 100 #define VAX_BTYP_650 0x0A000001 /* MicroVAX 3500, 3600 */ 101 /* VAX_BTYP_65D 0x0A000001 VAXstation 3200, 3500 XXX */ 102 /* VAX_BTYP_640 0x0A000001 MicroVAX 3300, 3400 XXX */ 103 /* VAX_BTYP_655 0x0A000001 MicroVAX 3800, 3900 XXX */ 104 #define VAX_BTYP_9CC 0x0A000002 /* VAX 6000 model 210/310 */ 105 #define VAX_BTYP_60 0x0A000003 /* VAXstation 3520, 3540 */ 106 #define VAX_BTYP_420 0x0A000004 /* VAXstation 3100 models 10 - 48 */ 107 #define VAX_BTYP_IS1 0x0A000006 /* Infoserver 1000 */ 108 #define VAX_BTYP_510 0x0A000007 /* VAXft model 110 */ 109 /* VAX_BTYP_520 0x0A000007 VAXft model 310 */ 110 111 /* 112 * SID Extension register definitions for CVAX series 113 */ 114 #define VAX_SIE_KA640 0x2 /* KA640 MicroVAX 3300, 3400 */ 115 #define VAX_SIE_KA650 0x1 /* KA650 MicroVAX 3500, 3600 */ 116 #define VAX_SIE_KA655 0x3 /* KA655 MicroVAX 3800, 3900 */ 117 118 /* 119 * Rigel chip series (1990) 120 */ 121 #define VAX_TYP_RIGEL 11 122 /* VAX_TYP_9RR 11 */ 123 124 #define VAX_BTYP_670 0x0B000001 /* VAX 4000 model 300 */ 125 #define VAX_BTYP_9RR 0x0B000002 /* VAX 6000 model 410-460 */ 126 #define VAX_BTYP_43 0x0B000004 /* VAXstation 3100 model 76 */ 127 128 /* 129 * Aquarius series (1990) 130 */ 131 #define VAX_TYP_9000 14 132 133 #define VAX_BTYP_9AR 0x0E00000? /* VAX 9000 models 210, 410-440 */ 134 #define VAX_BTYP_9AQ 0x0E00000? /* VAX 9000 models 400-800 */ 135 136 /* 137 * Polarstar series (1988) 138 */ 139 #define VAX_TYP_8PS 17 140 141 #define VAX_BTYP_8PS 0x11000000 /* VAX 8810 to 8840 */ 142 143 /* 144 * Mariah chip series (1991) 145 */ 146 #define VAX_TYP_MARIAH 18 147 #define VAX_TYP_V12 18 148 149 #define VAX_BTYP_1202 0x12000002 /* VAX 6000 model 510-560 */ 150 #define VAX_BTYP_46 0x12000004 /* VAXstation 4000/60, 3100/80 */ 151 152 /* 153 * NVAX chip series (1991) 154 */ 155 #define VAX_TYP_NVAX 19 156 #define VAX_TYP_V13 19 157 158 #define VAX_BTYP_680 0x13000001 /* VAX 4000 model [45]00 */ 159 #define VAX_STYP_675 0x0c /* VAX 4000 model 400 */ 160 #define VAX_STYP_680 0x06 /* VAX 4000 model 500 */ 161 #define VAX_STYP_690 0x07 /* VAX 4000 model 600 */ 162 #define VAX_BTYP_1302 0x13000002 163 #define VAX_BTYP_53 0x13000003 /* VAX 4000 model 105x, MV 3100/9x */ 164 #define VAX_STYP_51 0x09 /* MicroVAX 3100 model 90 / 95 */ 165 #define VAX_STYP_52 0x0a /* VAX 4000 model 100 */ 166 #define VAX_STYP_53 0x0b /* VAX 4000 model 10[568] */ 167 #define VAX_STYP_55 0x08 /* MicroVAX 3100 model 85 */ 168 #define VAX_BTYP_49 0x13000004 /* VAXstation 4000 model 90 */ 169 #define VAX_BTYP_681 0x13000005 /* VAX 4000 model 500A/705A */ 170 #define VAX_STYP_681 0x0e /* VAX 4000 model 500A */ 171 #define VAX_STYP_691 0x0f /* VAX 4000 model 605A */ 172 #define VAX_STYP_694 0x10 /* VAX 4000 model 705A */ 173 174 /* 175 * SOC chip series (1991) 176 */ 177 #define VAX_TYP_SOC 20 178 #define VAX_TYP_V14 20 179 180 #define VAX_BTYP_660 0x14000001 /* VAX 4000 model 200 */ 181 #define VAX_BTYP_48 0x14000004 /* VAXstation 4000 VLC */ 182 #define VAX_BTYP_550 0x14000007 /* VAXft model 410, 610 */ 183 #define VAX_BTYP_VXT 0x14000008 /* VXT 2000 */ 184 185 /* 186 * NVAX+ chip series (1991) 187 */ 188 #define VAX_TYP_NVPLUS 23 189 #define VAX_TYP_V17 23 190 191 #define VAX_BTYP_1701 0x17000001 192 193 /* 194 * Highest Number supported by NetBSD/VAX 195 */ 196 #define VAX_TYP_MAX VAX_TYP_NVAX 197 198 /* 199 * compatibility with old names: 200 */ 201 202 #define VAX_780 VAX_TYP_780 203 #define VAX_750 VAX_TYP_750 204 #define VAX_730 VAX_TYP_730 205 #define VAX_8600 VAX_TYP_790 206 #define VAX_8200 VAX_TYP_8SS 207 #define VAX_8800 VAX_TYP_8NN 208 #define VAX_610 VAX_TYP_UV1 209 #define VAX_78032 VAX_TYP_UV2 210 #define VAX_650 VAX_TYP_CVAX 211 212 /* 213 * Some common-used external variables. 214 */ 215 extern int vax_cputype; /* general, highest byte of the SID-register */ 216 extern int vax_cpudata; /* general, the contents of the SID-register */ 217 extern int vax_siedata; /* contents of the SIE register */ 218 extern int vax_bustype; /* HW-dep., setup at consinit() in ka???.c */ 219 extern int vax_boardtype; /* HW-dep., msb of SID | SIE (SID-extension) */ 220 extern int vax_confdata; /* HW-dep., hardware dependent config-data */ 221 222