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