summaryrefslogtreecommitdiff
path: root/sys/arch/vax
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/vax')
-rw-r--r--sys/arch/vax/include/sid.h9
-rw-r--r--sys/arch/vax/vax/findcpu.c3
-rw-r--r--sys/arch/vax/vax/gencons.c5
-rw-r--r--sys/arch/vax/vax/ka680.c57
-rw-r--r--sys/arch/vax/vax/locore.c18
5 files changed, 67 insertions, 25 deletions
diff --git a/sys/arch/vax/include/sid.h b/sys/arch/vax/include/sid.h
index a949bb00eb6..766bbd308af 100644
--- a/sys/arch/vax/include/sid.h
+++ b/sys/arch/vax/include/sid.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: sid.h,v 1.11 2001/10/01 12:53:37 hugh Exp $ */
+/* $OpenBSD: sid.h,v 1.12 2002/01/31 11:42:52 hugh Exp $ */
/* $NetBSD: sid.h,v 1.12 1999/12/11 17:55:13 ragge Exp $ */
/*
@@ -163,9 +163,7 @@
#define VAX_BTYP_1301 0x13000001 /* VAX 4000 model [4-6]00 */
#define VAX_STYP_675 0x00000c /* VAX 4000 model 400 */
#define VAX_STYP_680 0x000006 /* VAX 4000 model 500 */
-#define VAX_STYP_681 0x00000e /* VAX 4000 model 500A */
#define VAX_STYP_690 0x000007 /* VAX 4000 model 600 */
-#define VAX_STYP_691 0x00000f /* VAX 4000 model 605A */
#define VAX_STYP_692 0x000010 /* VAX 4000 model 700? */
#define VAX_BTYP_1302 0x13000002
@@ -176,6 +174,11 @@
#define VAX_STYP_52 0x00000a /* VAX 4000 model 100 */
#define VAX_STYP_53 0x00000b /* VAX 4000 model 105A */
+#define VAX_BTYP_1305 0x13000005 /* Legacy machines */
+#define VAX_STYP_681 0x00000e /* VAX 4000 model 500A */
+#define VAX_STYP_691 0x00000f /* VAX 4000 model 605A */
+#define VAX_STYP_694 0x000010 /* VAX 4000 model 705A */
+
#define VAX_BTYP_49 0x13000004 /* VaxStation 4000 model 90 */
/*
diff --git a/sys/arch/vax/vax/findcpu.c b/sys/arch/vax/vax/findcpu.c
index d212f0d743e..bdf979cdeef 100644
--- a/sys/arch/vax/vax/findcpu.c
+++ b/sys/arch/vax/vax/findcpu.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: findcpu.c,v 1.7 2001/03/12 11:45:38 hugh Exp $ */
+/* $OpenBSD: findcpu.c,v 1.8 2002/01/31 11:42:51 hugh Exp $ */
/* $NetBSD: findcpu.c,v 1.5 1999/08/23 19:10:43 ragge Exp $ */
/*
* Copyright (c) 1994, 1998 Ludd, University of Lule}, Sweden.
@@ -109,6 +109,7 @@ findcpu()
case VAX_BTYP_670:
case VAX_BTYP_1301:
case VAX_BTYP_1303:
+ case VAX_BTYP_1305:
vax_bustype = VAX_IBUS;
break;
diff --git a/sys/arch/vax/vax/gencons.c b/sys/arch/vax/vax/gencons.c
index 4962482355b..ec41eac6342 100644
--- a/sys/arch/vax/vax/gencons.c
+++ b/sys/arch/vax/vax/gencons.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: gencons.c,v 1.12 2001/08/25 13:33:37 hugh Exp $ */
+/* $OpenBSD: gencons.c,v 1.13 2002/01/31 11:42:51 hugh Exp $ */
/* $NetBSD: gencons.c,v 1.22 2000/01/24 02:40:33 matt Exp $ */
/*
@@ -256,7 +256,8 @@ gencnprobe(struct consdev *cndev)
(vax_boardtype == VAX_BTYP_660) ||
(vax_boardtype == VAX_BTYP_670) ||
(vax_boardtype == VAX_BTYP_1301) ||
- (vax_boardtype == VAX_BTYP_1303)) {
+ (vax_boardtype == VAX_BTYP_1303) ||
+ (vax_boardtype == VAX_BTYP_1305)) {
cndev->cn_dev = makedev(25, 0);
cndev->cn_pri = CN_NORMAL;
} else
diff --git a/sys/arch/vax/vax/ka680.c b/sys/arch/vax/vax/ka680.c
index 0cc8f9aa5c0..685d9a31285 100644
--- a/sys/arch/vax/vax/ka680.c
+++ b/sys/arch/vax/vax/ka680.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ka680.c,v 1.6 2001/08/25 13:33:37 hugh Exp $ */
+/* $OpenBSD: ka680.c,v 1.7 2002/01/31 11:42:52 hugh Exp $ */
/* $NetBSD: ka680.c,v 1.3 2001/01/28 21:01:53 ragge Exp $ */
/*
* Copyright (c) 2000 Ludd, University of Lule}, Sweden.
@@ -112,24 +112,36 @@ ka680_conf()
*hej = *hej;
hej[-1] = hej[-1];
- switch((vax_siedata & 0xff00) >> 8) {
- case VAX_STYP_675:
- cpuname = "KA675";
- break;
- case VAX_STYP_680:
- cpuname = "KA680";
- break;
- case VAX_STYP_681:
- cpuname = "KA681";
- break;
- case VAX_STYP_690:
- cpuname = "KA690";
- break;
- case VAX_STYP_691:
- cpuname = "KA691";
+ switch(vax_boardtype) {
+ case VAX_BTYP_1301:
+ switch((vax_siedata & 0xff00) >> 8) {
+ case VAX_STYP_675:
+ cpuname = "KA675";
+ break;
+ case VAX_STYP_680:
+ cpuname = "KA680";
+ break;
+ case VAX_STYP_690:
+ cpuname = "KA690";
+ break;
+ default:
+ cpuname = "unknown NVAX 1301";
+ }
break;
- default:
- cpuname = "unknown NVAX";
+ case VAX_BTYP_1305:
+ switch((vax_siedata & 0xff00) >> 8) {
+ case VAX_STYP_681:
+ cpuname = "KA681";
+ break;
+ case VAX_STYP_691:
+ cpuname = "KA691";
+ break;
+ case VAX_STYP_694:
+ cpuname = "KA694";
+ break;
+ default:
+ cpuname = "unknown NVAX 1305";
+ }
}
printf("cpu0: %s, ucode rev %d\n", cpuname, vax_cpudata & 0xff);
}
@@ -162,7 +174,16 @@ ka680_cache_enable()
havevic = 1;
break;
case VAX_STYP_690:
+ fslut = 0x01440000;
+ cslut = 0x01040000;
+ havevic = 1;
+ break;
case VAX_STYP_691: /* XXX untested */
+ fslut = 0x01420000;
+ cslut = 0x01020000;
+ havevic = 1;
+ break;
+ case VAX_STYP_694: /* XXX untested */
fslut = 0x01440000;
cslut = 0x01040000;
havevic = 1;
diff --git a/sys/arch/vax/vax/locore.c b/sys/arch/vax/vax/locore.c
index ecb0510a5fb..0563866c957 100644
--- a/sys/arch/vax/vax/locore.c
+++ b/sys/arch/vax/vax/locore.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.c,v 1.20 2001/11/06 19:53:17 miod Exp $ */
+/* $OpenBSD: locore.c,v 1.21 2002/01/31 11:42:52 hugh Exp $ */
/* $NetBSD: locore.c,v 1.43 2000/03/26 11:39:45 ragge Exp $ */
/*
* Copyright (c) 1994, 1998 Ludd, University of Lule}, Sweden.
@@ -259,6 +259,22 @@ start()
strcpy(cpu_model,"VAX - Unknown Omega Class");
}
break;
+ case VAX_BTYP_1305:
+ dep_call = &ka680_calls;
+ switch((vax_siedata & 0xff00) >> 8) {
+ case VAX_STYP_681:
+ strcpy(cpu_model,"VAX 4000 500A");
+ break;
+ case VAX_STYP_691:
+ strcpy(cpu_model,"VAX 4000 605A");
+ break;
+ case VAX_STYP_694:
+ strcpy(cpu_model,"VAX 4000 705A");
+ break;
+ default:
+ strcpy(cpu_model,"VAX - Unknown Legacy Class");
+ }
+ break;
#endif
#if VAX8200
case VAX_BTYP_8000: