1 /* $NetBSD: ka630.h,v 1.5 2000/07/19 01:01:58 matt Exp $ */ 2 /*- 3 * Copyright (c) 1986, 1988 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 1. Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 2. Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in the 13 * documentation and/or other materials provided with the distribution. 14 * 3. All advertising materials mentioning features or use of this software 15 * must display the following acknowledgement: 16 * This product includes software developed by the University of 17 * California, Berkeley and its contributors. 18 * 4. Neither the name of the University nor the names of its contributors 19 * may be used to endorse or promote products derived from this software 20 * without specific prior written permission. 21 * 22 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * 34 * @(#)uvaxII.h 7.4 (Berkeley) 5/9/91 35 */ 36 37 #ifndef _VAX_INCLUDE_KA630_H_ 38 #define _VAX_INCLUDE_KA630_H_ 39 40 #define UVAXIISID ((u_long *)0x20040004) 41 #define UVAXIICPU ((struct uvaxIIcpu *)0x20080000) 42 43 #ifndef _LOCORE 44 struct uvaxIIcpu { 45 u_short uvaxII_bdr; 46 u_short uvaxII_xxx; 47 u_long uvaxII_mser; 48 u_long uvaxII_cear; 49 u_long uvaxII_dear; 50 }; 51 #endif 52 53 /* Memory system err reg. */ 54 #define UVAXIIMSER_CD 0x00000300 55 #define UVAXIIMSER_NXM 0x00000080 56 #define UVAXIIMSER_LPE 0x00000040 57 #define UVAXIIMSER_QPE 0x00000020 58 #define UVAXIIMSER_MERR 0x000000f0 59 #define UVAXIIMSER_CPUE 0x00000060 60 #define UVAXIIMSER_DQPE 0x00000010 61 #define UVAXIIMSER_LEB 0x00000008 62 #define UVAXIIMSER_WRWP 0x00000002 63 #define UVAXIIMSER_PEN 0x00000001 64 65 /* Mem. error address regs. */ 66 #define UVAXIICEAR_PG 0x00007fff 67 #define UVAXIIDEAR_PG 0x00007fff 68 69 /* 70 * Definitions specific to the ka630 MicroVAXII Q22 bus cpu card. Includes the 71 * tod clock chip and the cpu registers. 72 */ 73 #define KA630CLK ((struct ka630clock *)0x200b8000) 74 75 /* Bdr register bits */ 76 #define KA630BDR_PWROK 0x8000 77 #define KA630BDR_HLTENB 0x4000 78 #define KA630BDR_CPU 0x0c00 79 #define KA630BDR_BDG 0x0300 80 #define KA630BDR_DSPL 0x000f 81 82 /* Clock registers and constants */ 83 #define MINSEC 60 84 #define HRSEC 3600 85 #define DAYSEC (HRSEC * 24) 86 #define YEARSEC (DAYSEC * 365) 87 88 #define KA630CLK_VRT 0200 89 #define KA630CLK_UIP 0200 90 #define KA630CLK_RATE 040 91 #define KA630CLK_ENABLE 06 92 #define KA630CLK_SET 0206 93 /* cpmbx bits */ 94 #define KA630CLK_HLTACT 03 95 /* halt action values */ 96 #define KA630CLK_RESTRT 01 97 #define KA630CLK_REBOOT 02 98 #define KA630CLK_HALT 03 99 #define KA630CLK_DOTHIS 040 100 /* in progress flags */ 101 #define KA630CLK_BOOT 04 102 #define KA630CLK_RSTRT 010 103 #define KA630CLK_LANG 0360 104 105 #ifndef _LOCORE 106 struct ka630clock { 107 u_short sec; 108 u_short secalrm; 109 u_short min; 110 u_short minalrm; 111 u_short hr; 112 u_short hralrm; 113 u_short dayofwk; 114 u_short day; 115 u_short mon; 116 u_short yr; 117 u_short csr0; 118 u_short csr1; 119 u_short csr2; 120 u_short csr3; 121 u_short cpmbx; /* CPMBX is used by the boot rom. see ka630-ug-3.3.3 */ 122 }; 123 #endif 124 125 #define KA630_NVR_ADRS 0x200B8024 126 /* Definitions for various locations in the KA630 console page */ 127 #define KA630_PUTC_POLL 0x20 128 #define KA630_PUTC 0x24 129 #define KA630_GETC 0x1C 130 #define KA630_ROW 0x4C 131 #define KA630_MINROW 0x4D 132 #define KA630_MAXROW 0x4E 133 #define KA630_COL 0x50 134 #define KA630_MINCOL 0x51 135 #define KA630_MAXCOL 0x52 136 137 #endif /* _VAX_INCLUDE_KA630_H_ */ 138 139