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