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