Home | History | Annotate | Line # | Download | only in include
sid.h revision 1.21
      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