Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/vax Giant update from Michael Kukat (michael@unixir...
details: https://anonhg.NetBSD.org/src/rev/2386457c91ae
branches: trunk
changeset: 503316:2386457c91ae
user: ragge <ragge%NetBSD.org@localhost>
date: Sun Feb 04 20:36:26 2001 +0000
description:
Giant update from Michael Kukat (michael%unixiron.org@localhost).
Fixes support for:
MicroVAX 3100m90
MicroVAX 3100m95
VAX 4000/100 (tested)
VAX 4000/105A (tested)
VAX 4000/108
VAX 4000/400 (tested)
VAX 4000/500 (tested)
VAX 4000/600
diffstat:
sys/arch/vax/conf/GENERIC | 16 +++++++---------
sys/arch/vax/conf/files.vax | 5 +----
sys/arch/vax/if/if_le_vsbus.c | 4 ++--
sys/arch/vax/include/sid.h | 6 +++++-
sys/arch/vax/vax/autoconf.c | 9 ++++++++-
sys/arch/vax/vax/clock.c | 5 +++--
sys/arch/vax/vax/conf.c | 8 ++------
sys/arch/vax/vax/ibus.c | 27 +--------------------------
sys/arch/vax/vax/ka53.c | 21 +++++++++++++++------
sys/arch/vax/vax/locore.c | 15 ++++++++++++---
sys/arch/vax/vax/vm_machdep.c | 12 +++++++-----
sys/arch/vax/vsa/asc_vsbus.c | 9 ++++-----
sys/arch/vax/vsa/dz_vsbus.c | 16 +++++++++++++++-
sys/arch/vax/vsa/hdc9224.c | 4 ++--
sys/arch/vax/vsa/ncr.c | 4 ++--
sys/arch/vax/vsa/smg.c | 4 ++--
sys/arch/vax/vsa/vsbus.c | 12 +++++++++---
17 files changed, 97 insertions(+), 80 deletions(-)
diffs (truncated from 588 to 300 lines):
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/conf/GENERIC
--- a/sys/arch/vax/conf/GENERIC Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/conf/GENERIC Sun Feb 04 20:36:26 2001 +0000
@@ -1,11 +1,11 @@
-# $NetBSD: GENERIC,v 1.85 2001/01/28 21:01:52 ragge Exp $
+# $NetBSD: GENERIC,v 1.86 2001/02/04 20:36:26 ragge Exp $
#
# GENERIC VAX configuration file; all supported devices.
#
include "arch/vax/conf/std.vax"
-#ident "GENERIC-$Revision: 1.85 $"
+#ident "GENERIC-$Revision: 1.86 $"
# Here are all different supported CPU types listed.
#options "VAX8800" # VAX 8500, 8530, 8550, 8700, 8800
@@ -18,13 +18,13 @@
options "VAX650" # MV III, 3300, 3400, 3500, 3600, 3800, 3900
options "VAX660" # VAX 4000/200
options "VAX670" # VAX 4000/300
-options "VAX680" # VAX 4000/500
+options "VAX680" # VAX 4000/[45]00
options "VAX410" # VS 2000
options "VAX43" # VS 3100/76
options "VAX46" # VS 4000/60
options "VAX48" # VS 4000 VLC
options "VAX49" # VS 4000/90
-options "VAX53" # VAX 4000/105A
+options "VAX53" # VAX 4000/10[058], MicroVAX 3100/m96
# Max users on system; this is just a hint
maxusers 8
@@ -126,11 +126,11 @@
le0 at vsbus0 csr 0x200e0000 # LANCE ethernet
ze0 at vsbus0 csr 0x20008000 # SGEC ethernet
dz0 at vsbus0 csr 0x200a0000 # DC-367 DZ-11 lookalike ctlr
-dz0 at vsbus0 csr 0x25000000 # VS4000/90 serial line
+dz0 at vsbus0 csr 0x25000000 # VS4000/90 and 4000/10x serial line
si0 at vsbus0 csr 0x200c0080 # VS2000/3100 SCSI-ctlr
+si1 at vsbus0 csr 0x200c0180 # VS2000/3100 SCSI-ctlr
asc0 at vsbus0 csr 0x200c0080 # VS4000/60 (or VLC) SCSI-ctlr
-asc0 at vsbus0 csr 0x26000080 # VS4000/90 SCSI-ctlr
-si1 at vsbus0 csr 0x200c0180 # VS2000/3100 SCSI-ctlr
+asc0 at vsbus0 csr 0x26000080 # VS4000/90 and 4000/10x SCSI-ctlr
smg0 at vsbus0 csr 0x200f0000 # Small monochrome display ctlr.
#clr0 at vsbus0 csr 0x30000000 # 4- or 8-bitplans color graphics
@@ -142,8 +142,6 @@
uba0 at ibus0 # Qbus adapter
ze0 at ibus0 # SGEC on-board ethernet
le0 at ibus0 # LANCE ethernet (MV3400)
-dz0 at ibus0 # VAX 4000/105A serial lines
-#asc0 at ibus0 # VAX 4000/105A SCSI-ctlr
#shac0 at ibus0 # DSSI controller
# Devices connected at VAXBI
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/conf/files.vax
--- a/sys/arch/vax/conf/files.vax Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/conf/files.vax Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: files.vax,v 1.79 2001/01/28 21:01:52 ragge Exp $
+# $NetBSD: files.vax,v 1.80 2001/02/04 20:36:26 ragge Exp $
#
# new style config file for vax architecture
#
@@ -152,9 +152,6 @@
attach dz at vsbus with dz_vsbus
file arch/vax/vsa/dz_vsbus.c dz_vsbus | smg
-attach dz at ibus with dz_ibus
-file arch/vax/vsa/dz_ibus.c dz_ibus
-
# RD-type disks at VS2000's onboard MFM-controller
device hdc { drive = -1 }
attach hdc at vsbus
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/if/if_le_vsbus.c
--- a/sys/arch/vax/if/if_le_vsbus.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/if/if_le_vsbus.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le_vsbus.c,v 1.10 2000/06/29 07:14:18 mrg Exp $ */
+/* $NetBSD: if_le_vsbus.c,v 1.11 2001/02/04 20:36:27 ragge Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -160,7 +160,7 @@
int rv = 0;
int error;
- if (vax_boardtype == VAX_BTYP_49)
+ if (vax_boardtype == VAX_BTYP_49 || vax_boardtype == VAX_BTYP_53)
return 0;
error = bus_dmamap_create(va->va_dmat, sizeof(initblock), 1,
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/include/sid.h
--- a/sys/arch/vax/include/sid.h Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/include/sid.h Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: sid.h,v 1.15 2001/01/28 21:01:53 ragge Exp $ */
+/* $NetBSD: sid.h,v 1.16 2001/02/04 20:36:27 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
@@ -32,6 +32,7 @@
/*
* Board-Type (?_BTYP_?) and Sub-Type (?_STYP_?) are synonima.
+ * Michael Kukat changed this 01/27/2001, STYP is really a subtype now.
* other synonima are:
*/
#define cpudata vax_cpudata
@@ -160,6 +161,9 @@
#define VAX_STYP_680 0x06 /* VAX 4000 model 500 */
#define VAX_BTYP_1302 0x13000002
#define VAX_BTYP_53 0x13000003 /* VAX 4000 model 105A */
+#define VAX_STYP_51 0x09 /* MicroVAX 3100 model 90 / 95 */
+#define VAX_STYP_52 0x0a /* VAX 4000 model 100 */
+#define VAX_STYP_53 0x0b /* VAX 4000 model 105A */
#define VAX_BTYP_49 0x13000004 /* MicroVAX 3100 model 90 */
/*
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/vax/autoconf.c
--- a/sys/arch/vax/vax/autoconf.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/vax/autoconf.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.67 2000/07/26 11:44:26 ragge Exp $ */
+/* $NetBSD: autoconf.c,v 1.68 2001/02/04 20:36:28 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
@@ -60,6 +60,7 @@
#include <dev/bi/bireg.h>
#include "locators.h"
+#include "opt_cputype.h"
void gencnslask __P((void));
@@ -150,6 +151,12 @@
*/
config_found(self, NULL, mainbus_print);
+#if VAX53
+ /* Kludge: To have two master buses */
+ if (vax_boardtype == VAX_BTYP_53)
+ config_found(self, (void *)1, mainbus_print);
+#endif
+
if (dep_call->cpu_subconf)
(*dep_call->cpu_subconf)(self);
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/vax/clock.c
--- a/sys/arch/vax/vax/clock.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/vax/clock.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: clock.c,v 1.38 2000/07/26 11:54:32 ragge Exp $ */
+/* $NetBSD: clock.c,v 1.39 2001/02/04 20:36:31 ragge Exp $ */
/*
* Copyright (c) 1995 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -215,7 +215,8 @@
return y;
}
-#if VAX750 || VAX780 || VAX8600 || VAX650 || VAX660 || VAX670 || VAX680
+#if VAX750 || VAX780 || VAX8600 || VAX650 || \
+ VAX660 || VAX670 || VAX680 || VAX53
/*
* Reads the TODR register; returns a (probably) true tick value,
* or CLKREAD_BAD if failed. The year is based on the argument
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/vax/conf.c
--- a/sys/arch/vax/vax/conf.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/vax/conf.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: conf.c,v 1.51 2001/01/28 21:01:53 ragge Exp $ */
+/* $NetBSD: conf.c,v 1.52 2001/02/04 20:36:32 ragge Exp $ */
/*-
* Copyright (c) 1982, 1986 The Regents of the University of California.
@@ -174,7 +174,6 @@
cons_decl(gen);
cons_decl(dz);
-cons_decl(idz);
cons_decl(qd);
cons_decl(smg);
#include "qv.h"
@@ -188,12 +187,9 @@
#else
#define NGEN 0
#endif
-#if VAX410 || VAX43 || VAX46 || VAX48 || VAX49
+#if VAX410 || VAX43 || VAX46 || VAX48 || VAX49 || VAX53
cons_init(dz), /* DZ11-like serial console on VAXstations */
#endif
-#if VAX53
- cons_init(idz), /* DZ11-like serial console on VAX/MicroVAX */
-#endif
#if VAX650 || VAX630
#if NQV
cons_init(qv), /* QVSS/QDSS bit-mapped console driver */
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/vax/ibus.c
--- a/sys/arch/vax/vax/ibus.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/vax/ibus.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ibus.c,v 1.6 2001/01/28 21:01:53 ragge Exp $ */
+/* $NetBSD: ibus.c,v 1.7 2001/02/04 20:36:32 ragge Exp $ */
/*
* Copyright (c) 1999 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -70,8 +70,6 @@
#define MVNIADDR 0x20084400
#define SGECADDR 0x20008000
#define SHACADDR 0x20004200
-#define DZADDR 0x25000000
-#define SCSIADDR 0x26000080
void
ibus_attach(struct device *parent, struct device *self, void *aux)
@@ -80,20 +78,6 @@
vaddr_t va;
printf("\n");
-#if 0
- if (...) {
- ibus_dma_init(sc);
- }
-#endif
- /*
- * Maybe it has the dz serial lines
- */
- bp.type = "dz";
- va = vax_map_physmem(DZADDR, 1);
- if (badaddr((caddr_t)va, 2) == 0)
- config_found(self, &bp, ibus_print);
- vax_unmap_physmem(va, 1);
-
/*
* There may be a SGEC. Is badaddr() enough here?
*/
@@ -122,15 +106,6 @@
vax_unmap_physmem(va, 1);
/*
- * NCR SCSI controller could be there
- */
- bp.type = "asc";
- va = vax_map_physmem(SCSIADDR, 1);
- if (badaddr((caddr_t)va + 0x48, 2) == 0)
- config_found(self, &bp, ibus_print);
- vax_unmap_physmem(va, 1);
-
- /*
* All MV's have a Qbus.
*/
bp.type = "uba";
diff -r fed2a160985d -r 2386457c91ae sys/arch/vax/vax/ka53.c
--- a/sys/arch/vax/vax/ka53.c Sun Feb 04 20:15:52 2001 +0000
+++ b/sys/arch/vax/vax/ka53.c Sun Feb 04 20:36:26 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ka53.c,v 1.3 2001/01/28 21:01:53 ragge Exp $ */
+/* $NetBSD: ka53.c,v 1.4 2001/02/04 20:36:32 ragge Exp $ */
/*
* Copyright (c) 2000 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -30,7 +30,11 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-/* Done by Michael Kukat (michael%unixiron.org@localhost) */
+/*
+ * Done by Michael Kukat (michael%unixiron.org@localhost)
+ * Thanx for the good cooperation with Hugh Graham (hugh%openbsd.org@localhost)
+ * and his useful hints for the console of these machines
+ */
#include <sys/param.h>
#include <sys/device.h>
@@ -77,13 +81,20 @@
void
ka53_conf()
{
+ char *cpuname;
+
/* Don't ask why, but we seem to need this... */
-
volatile int *hej = (void *)mfpr(PR_ISP);
*hej = *hej;
hej[-1] = hej[-1];
- printf("cpu0: KA53, ucode rev %d\n", vax_cpudata & 0xff);
+ switch((vax_siedata & 0xff00) >> 8) {
+ case VAX_STYP_51: cpuname = "KA51"; break;
+ case VAX_STYP_52: cpuname = "KA52"; break;
+ case VAX_STYP_53: cpuname = "KA53 or KA57"; break;
+ default: cpuname = "unknown NVAX";
+ }
+ printf("cpu0: %s, ucode rev %d\n", cpuname, vax_cpudata & 0xff);
}
Home |
Main Index |
Thread Index |
Old Index