Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/vax A bunch of new CPUs that are supported, from Mi...



details:   https://anonhg.NetBSD.org/src/rev/9b2eddc75058
branches:  trunk
changeset: 503011:9b2eddc75058
user:      ragge <ragge%NetBSD.org@localhost>
date:      Sun Jan 28 21:01:52 2001 +0000

description:
A bunch of new CPUs that are supported, from Michael Kukat
(michael%unixiron.org@localhost). Among them are 4000/400, 4000/500 and 4000/105A.

diffstat:

 sys/arch/vax/conf/GENERIC   |   15 +-
 sys/arch/vax/conf/INSTALL   |    6 +-
 sys/arch/vax/conf/files.vax |    7 +-
 sys/arch/vax/include/sid.h  |    7 +-
 sys/arch/vax/vax/conf.c     |   10 +-
 sys/arch/vax/vax/gencons.c  |    3 +-
 sys/arch/vax/vax/ibus.c     |   23 +++-
 sys/arch/vax/vax/ka49.c     |    2 +-
 sys/arch/vax/vax/ka53.c     |   34 +++--
 sys/arch/vax/vax/ka680.c    |  201 ++++++++++++++++++----------------
 sys/arch/vax/vax/locore.c   |   11 +-
 sys/arch/vax/vsa/dz_ibus.c  |  252 +++++++++++++------------------------------
 12 files changed, 267 insertions(+), 304 deletions(-)

diffs (truncated from 1018 to 300 lines):

diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/conf/GENERIC
--- a/sys/arch/vax/conf/GENERIC Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/conf/GENERIC Sun Jan 28 21:01:52 2001 +0000
@@ -1,11 +1,11 @@
-#      $NetBSD: GENERIC,v 1.84 2000/12/19 15:51:50 tsutsui Exp $
+#      $NetBSD: GENERIC,v 1.85 2001/01/28 21:01:52 ragge Exp $
 #
 # GENERIC VAX configuration file; all supported devices.
 #
 
 include                "arch/vax/conf/std.vax"
 
-#ident                 "GENERIC-$Revision: 1.84 $"
+#ident                 "GENERIC-$Revision: 1.85 $"
 
 # 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/500
 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/105A
 
 # Max users on system; this is just a hint
 maxusers       8
@@ -142,7 +142,8 @@
 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
+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
@@ -215,8 +216,8 @@
 pseudo-device   loop   1
 pseudo-device   pty                    # pseudo-terminals
 pseudo-device  bpfilter 8              # Not supported by de yet.
-pseudo-device  sl      2
-pseudo-device  ppp     2
+#pseudo-device sl      2
+#pseudo-device ppp     2
 pseudo-device  tun     2
 #pseudo-device gre     2               # generic L3 over IP tunnel
 pseudo-device  gif     4               # IPv[46] over IPv[46] tunnel (RFC1933)
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/conf/INSTALL
--- a/sys/arch/vax/conf/INSTALL Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/conf/INSTALL Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: INSTALL,v 1.13 2000/12/19 15:51:50 tsutsui Exp $
+#      $NetBSD: INSTALL,v 1.14 2001/01/28 21:01:52 ragge Exp $
 #
 # INSTALL kernel; all supported devices but nothing fancy.
 #
@@ -16,11 +16,13 @@
 options        "VAX650"        # MV III, 3600, 3800, 3900
 options        "VAX660"        # VAX 4000/200
 options        "VAX670"        # VAX 4000/300
+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
 
 # Max users on system; this is just a hint
 maxusers       8
@@ -133,6 +135,8 @@
 
 # Devices on internal MicroVAX bus
 uba0           at ibus?        # Q-Bus adapter
+dz0            at ibus?        # VAX 4000/105A serial lines
+#asc0          at ibus?        # VAX 4000/105A SCSI ctlr
 
 # Disk controllers at Unibus
 uda0           at uba? csr 0172150     # UDA50/RQDX?
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/conf/files.vax
--- a/sys/arch/vax/conf/files.vax       Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/conf/files.vax       Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-#       $NetBSD: files.vax,v 1.78 2001/01/17 00:07:39 fvdl Exp $
+#       $NetBSD: files.vax,v 1.79 2001/01/28 21:01:52 ragge Exp $
 #
 # new style config file for vax architecture
 #
@@ -150,7 +150,10 @@
 file   arch/vax/uba/ts.c               ts needs-flag
 
 attach dz at vsbus with dz_vsbus
-file   arch/vax/vsa/dz_ibus.c          dz_vsbus | smg
+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 }
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/include/sid.h
--- a/sys/arch/vax/include/sid.h        Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/include/sid.h        Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: sid.h,v 1.14 2000/05/22 15:40:06 matt Exp $    */
+/*     $NetBSD: sid.h,v 1.15 2001/01/28 21:01:53 ragge Exp $   */
 
 /*
  * Copyright (c) 1994 Ludd, University of Lule}, Sweden.
@@ -155,8 +155,9 @@
 #define VAX_TYP_NVAX   19
 #define VAX_TYP_V13    19
  
-#define VAX_BTYP_680   0x13000001      /* VAX 4000 model 500 */
-#define VAX_BTYP_1301  0x13000001      /* VAX 4000 model 100 */
+#define VAX_BTYP_680   0x13000001      /* VAX 4000 model [45]00 */
+#define        VAX_STYP_675    0x0c            /* VAX 4000 model 400 */
+#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_BTYP_49    0x13000004      /* MicroVAX 3100 model 90 */
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/vax/conf.c
--- a/sys/arch/vax/vax/conf.c   Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/vax/conf.c   Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: conf.c,v 1.50 2000/12/30 20:15:02 matt Exp $   */
+/*     $NetBSD: conf.c,v 1.51 2001/01/28 21:01:53 ragge Exp $  */
 
 /*-
  * Copyright (c) 1982, 1986 The Regents of the University of California.
@@ -155,6 +155,7 @@
  */
 #include <dev/cons.h>
 
+#include "smg.h"
 #include "wskbd.h"
 #if NSMG > 0
 #if NWSKBD > 0
@@ -173,11 +174,11 @@
 
 cons_decl(gen);
 cons_decl(dz);
+cons_decl(idz);
 cons_decl(qd);
 cons_decl(smg);
 #include "qv.h"
 #include "qd.h"
-#include "smg.h"
 
 struct consdev constab[]={
 #if VAX8600 || VAX8200 || VAX780 || VAX750 || VAX650 || VAX630 || VAX660 || \
@@ -187,9 +188,12 @@
 #else
 #define NGEN   0
 #endif
-#if VAX410 || VAX43 || VAX46 || VAX48 || VAX49 || VAX53
+#if VAX410 || VAX43 || VAX46 || VAX48 || VAX49
        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 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/vax/gencons.c
--- a/sys/arch/vax/vax/gencons.c        Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/vax/gencons.c        Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: gencons.c,v 1.28 2000/11/02 00:42:41 eeh Exp $ */
+/*     $NetBSD: gencons.c,v 1.29 2001/01/28 21:01:53 ragge Exp $       */
 
 /*
  * Copyright (c) 1994 Gordon W. Ross
@@ -244,6 +244,7 @@
            (vax_boardtype == VAX_BTYP_630) ||
            (vax_boardtype == VAX_BTYP_660) ||
            (vax_boardtype == VAX_BTYP_670) ||
+           (vax_boardtype == VAX_BTYP_680) ||
            (vax_boardtype == VAX_BTYP_650)) {
                cndev->cn_dev = makedev(25, 0);
                cndev->cn_pri = CN_NORMAL;
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/vax/ibus.c
--- a/sys/arch/vax/vax/ibus.c   Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/vax/ibus.c   Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ibus.c,v 1.5 2000/06/04 18:02:35 ragge Exp $ */
+/*     $NetBSD: ibus.c,v 1.6 2001/01/28 21:01:53 ragge Exp $ */
 /*
  * Copyright (c) 1999 Ludd, University of Lule}, Sweden.
  * All rights reserved.
@@ -70,6 +70,8 @@
 #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)
@@ -84,6 +86,15 @@
        }
 #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?
         */
        bp.type = "sgec";
@@ -109,6 +120,16 @@
        if (badaddr((caddr_t)va + 0x48, 4) == 0)
                config_found(self, &bp, ibus_print);
        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.
         */
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/vax/ka49.c
--- a/sys/arch/vax/vax/ka49.c   Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/vax/ka49.c   Sun Jan 28 21:01:52 2001 +0000
@@ -63,7 +63,7 @@
        ka49_conf,
        chip_clkread,
        chip_clkwrite,
-       16,      /* ~VUPS */
+       32,      /* ~VUPS */
        2,      /* SCB pages */
        ka49_halt,
        ka49_reboot,
diff -r 196b84f4f69f -r 9b2eddc75058 sys/arch/vax/vax/ka53.c
--- a/sys/arch/vax/vax/ka53.c   Sun Jan 28 20:48:31 2001 +0000
+++ b/sys/arch/vax/vax/ka53.c   Sun Jan 28 21:01:52 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ka53.c,v 1.2 2000/06/04 02:19:27 matt Exp $    */
+/*     $NetBSD: ka53.c,v 1.3 2001/01/28 21:01:53 ragge Exp $   */
 /*
  * Copyright (c) 2000 Ludd, University of Lule}, Sweden.
  * All rights reserved.
@@ -30,6 +30,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/* Done by Michael Kukat (michael%unixiron.org@localhost) */
+
 #include <sys/param.h>
 #include <sys/device.h>
 #include <sys/systm.h>
@@ -46,19 +48,17 @@
 static int     ka53_mchk(caddr_t);
 static void    ka53_halt(void);
 static void    ka53_reboot(int);
-#ifdef notyet
-static void    ka53_softmem(int);
-static void    ka53_hardmem(int);
+static void    ka53_softmem(void *);
+static void    ka53_hardmem(void *);
 static void    ka53_steal_pages(void);
 static void    ka53_cache_enable(void);
-#endif
 static void    ka53_halt(void);
 
 /* 
- * Declaration of 680-specific calls.
+ * Declaration of 53-specific calls.
  */
 struct cpu_dep ka53_calls = {
-       0, /*ka53_steal_pages,*/
+       ka53_steal_pages,
        ka53_mchk,
        ka53_memerr, 
        ka53_conf,
@@ -68,21 +68,30 @@
        2,      /* SCB pages */
        ka53_halt,
        ka53_reboot,
+       NULL,
+       NULL,



Home | Main Index | Thread Index | Old Index