summaryrefslogtreecommitdiff
path: root/sys/arch/vax/boot
diff options
context:
space:
mode:
authorMichael Shalayeff <mickey@cvs.openbsd.org>1996-05-03 09:10:29 +0000
committerMichael Shalayeff <mickey@cvs.openbsd.org>1996-05-03 09:10:29 +0000
commit595cbd2e050401adf0cab2bab6ce52f902dfbb54 (patch)
tree8474c159022572bb93d15b7f2c287d1044321bc1 /sys/arch/vax/boot
parent3472e7ae763d3e453e57b218243b6d60ece25b43 (diff)
sync w/ 0430
Diffstat (limited to 'sys/arch/vax/boot')
-rw-r--r--sys/arch/vax/boot/Makefile12
-rw-r--r--sys/arch/vax/boot/autoconf.c32
-rw-r--r--sys/arch/vax/boot/bootxx.c16
-rw-r--r--sys/arch/vax/boot/conf.c5
-rw-r--r--sys/arch/vax/boot/ctu.c181
-rw-r--r--sys/arch/vax/boot/devopen.c5
-rw-r--r--sys/arch/vax/boot/hp.c10
-rw-r--r--sys/arch/vax/boot/ra.c6
-rw-r--r--sys/arch/vax/boot/srt0.s13
-rw-r--r--sys/arch/vax/boot/start.s7
-rw-r--r--sys/arch/vax/boot/tmscp.c10
-rw-r--r--sys/arch/vax/boot/vaxstand.h6
12 files changed, 264 insertions, 39 deletions
diff --git a/sys/arch/vax/boot/Makefile b/sys/arch/vax/boot/Makefile
index f6763596bc0..0078dcd8cfc 100644
--- a/sys/arch/vax/boot/Makefile
+++ b/sys/arch/vax/boot/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.6 1995/12/28 15:27:21 ragge Exp $
+# $NetBSD: Makefile,v 1.9 1996/03/16 11:03:12 ragge Exp $
#
INCPATH=-I. -I../../.. -I../.. -I../../../lib/libsa
@@ -11,7 +11,7 @@ S= ../../..
RELOC= 100000
CFLAGS+=-O ${INCPATH} -DSTANDALONE -DRELOC=0x${RELOC} -D_VAX_INLINE_
-DEVS= autoconf.o hp.o ra.o tmscp.o
+DEVS= autoconf.o hp.o ra.o tmscp.o ctu.o
LIBKERN=libkern.a
KERNOBJ=__main.o strlen.o strcmp.o strncmp.o strncpy.o min.o strcpy.o
@@ -102,6 +102,14 @@ libkern.a: ${KERNOBJ}
@ar rv libkern.a `lorder ${KERNOBJ} | tsort`
#
+install: boot xxboot
+ install -c -o ${BINOWN} -g ${BINGRP} -m 444 boot ${DESTDIR}/
+ install -c -o ${BINOWN} -g ${BINGRP} -m 444 xxboot ${DESTDIR}/usr/mdec
+ rm -f ${DESTDIR}/usr/mdec/raboot
+ ln ${DESTDIR}/usr/mdec/xxboot ${DESTDIR}/usr/mdec/raboot
+ rm -f ${DESTDIR}/usr/mdec/hpboot
+ ln ${DESTDIR}/usr/mdec/xxboot ${DESTDIR}/usr/mdec/hpboot
+
clean::
rm -f start.o romread.o bootxx.o init.o xxboot boot racopy \
libsvax.a udiv.o urem.o consio.o ${DEVS} edlabel edlabel.o
diff --git a/sys/arch/vax/boot/autoconf.c b/sys/arch/vax/boot/autoconf.c
index 654d6a68680..ca08f01214a 100644
--- a/sys/arch/vax/boot/autoconf.c
+++ b/sys/arch/vax/boot/autoconf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.3 1995/09/16 13:34:20 ragge Exp $ */
+/* $NetBSD: autoconf.c,v 1.5 1996/03/07 23:27:06 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -47,6 +47,14 @@ static int uba750[]={0xf30000,0xf32000};
static int uio750[]={0xfc0000,0xf80000};
static int uda750[]={0772150};
+/* 11/780's only have 4, 8600 have 8 of these. */
+static int mba780[]={0x20010000,0x20012000,0x20014000,0x20016000,
+ 0x22010000,0x22012000,0x22014000,0x22016000};
+static int uba780[]={0x20006000,0x20008000,0x2000a000,0x2000c000,
+ 0x22006000,0x22008000,0x2200a000,0x2200c000};
+static int uio780[]={0x20100000,0x20140000,0x20180000,0x201c0000,
+ 0x22100000,0x22140000,0x22180000,0x221c0000};
+
static int uba630[]={0x20087800};
static int uio630[]={0x30000000};
#define qbdev(csr) (((csr) & 017777)-0x10000000)
@@ -67,6 +75,28 @@ autoconf()
printf("CPU type %d not supported by boot\n",i);
asm("halt");
+ case VAX_8600:
+ nmba = 8;
+ nuba = 8;
+ nuda = 1;
+ mbaaddr = mba780;
+ ubaaddr = uba780;
+ udaaddr = uda750;
+ uioaddr = uio780;
+ tmsaddr = 0774500;
+ break;
+
+ case VAX_780:
+ nmba = 4;
+ nuba = 4;
+ nuda = 1;
+ mbaaddr = mba780;
+ ubaaddr = uba780;
+ udaaddr = uda750;
+ uioaddr = uio780;
+ tmsaddr = 0774500;
+ break;
+
case VAX_750:
nmba = 3;
nuba = 2;
diff --git a/sys/arch/vax/boot/bootxx.c b/sys/arch/vax/boot/bootxx.c
index b60d7e7931c..4a1b34f83d6 100644
--- a/sys/arch/vax/boot/bootxx.c
+++ b/sys/arch/vax/boot/bootxx.c
@@ -1,4 +1,4 @@
-/* $NetBSD: bootxx.c,v 1.4 1995/10/20 13:35:43 ragge Exp $ */
+/* $NetBSD: bootxx.c,v 1.5 1996/02/17 18:23:21 ragge Exp $ */
/*-
* Copyright (c) 1982, 1986 The Regents of the University of California.
* All rights reserved.
@@ -41,15 +41,15 @@
#include "lib/libsa/stand.h"
#include "lib/libsa/ufs.h"
-#include "../mba/mbareg.h"
-#include "../mba/hpreg.h"
-
#include "../include/pte.h"
#include "../include/sid.h"
#include "../include/mtpr.h"
#include "../include/reg.h"
#include "../include/rpb.h"
+#include "../mba/mbareg.h"
+#include "../mba/hpreg.h"
+
#define NRSP 0 /* Kludge */
#define NCMD 0 /* Kludge */
#include "../uba/ubareg.h"
@@ -197,6 +197,10 @@ getbootdev()
is_tmscp = 1; /* use tape spec in mscp routines */
break;
+ case 64:
+ major = 8;
+ break;
+
default:
printf("Unsupported boot device %d, trying anyway.\n", bootdev);
boothowto |= (RB_SINGLE | RB_ASKNAME);
@@ -236,7 +240,7 @@ devopen(f, fname, file)
char line[64];
f->f_dev = &devsw[0];
- *file = fname;
+ *file = (char *)fname;
/*
* On uVAX we need to init [T]MSCP ctlr to be able to use it.
@@ -382,7 +386,7 @@ hpread(block, size, buf)
pfnum = (u_int) buf >> PGSHIFT;
for (mapnr = 0, nsize = size; (nsize + NBPG) > 0; nsize -= NBPG)
- mr->mba_map[mapnr++] = PG_V | pfnum++;
+ *(int *)&mr->mba_map[mapnr++] = PG_V | pfnum++;
mr->mba_var = ((u_int) buf & PGOFSET);
mr->mba_bc = (~size) + 1;
bn = block;
diff --git a/sys/arch/vax/boot/conf.c b/sys/arch/vax/boot/conf.c
index 15236d763df..f516c4d2c3a 100644
--- a/sys/arch/vax/boot/conf.c
+++ b/sys/arch/vax/boot/conf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: conf.c,v 1.4 1995/09/16 13:18:28 ragge Exp $ */
+/* $NetBSD: conf.c,v 1.5 1996/02/17 18:23:18 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -40,6 +40,7 @@
int raopen(), rastrategy();
int hpopen(), hpstrategy();
+int ctuopen(), ctustrategy();
int tmscpopen(), tmscpstrategy();
struct devsw devsw[]={
@@ -51,7 +52,7 @@ struct devsw devsw[]={
SADEV("tm",nullsys, nodev, nullsys, noioctl),
SADEV("ts",nullsys, nodev, nullsys, noioctl),
SADEV("mt",nullsys, nodev, nullsys, noioctl),
- SADEV("tu",nullsys, nodev, nullsys, noioctl),
+ SADEV("ctu",ctustrategy, ctuopen, nullsys, noioctl),
SADEV("ra",rastrategy, raopen, nullsys, noioctl),
SADEV("ut",nullsys, nodev, nullsys, noioctl),
SADEV("id",nullsys, nodev, nullsys, noioctl),
diff --git a/sys/arch/vax/boot/ctu.c b/sys/arch/vax/boot/ctu.c
new file mode 100644
index 00000000000..26f29525160
--- /dev/null
+++ b/sys/arch/vax/boot/ctu.c
@@ -0,0 +1,181 @@
+/* $NetBSD: ctu.c,v 1.1 1996/02/17 18:23:20 ragge Exp $ */
+/*
+ * Copyright (c) 1996 Ludd, University of Lule}, Sweden.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed at Ludd, University of
+ * Lule}, Sweden and its contributors.
+ * 4. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * Standalone device driver for 11/750 Console TU58.
+ * It can only handle reads, and doesn't calculate checksum.
+ */
+
+#include <sys/param.h>
+
+#include <lib/libsa/stand.h>
+
+#include <machine/mtpr.h>
+#include <machine/rsp.h>
+
+enum tu_state {
+ SC_INIT,
+ SC_READY,
+ SC_SEND_CMD,
+ SC_GET_RESP,
+};
+
+volatile struct tu_softc {
+ enum tu_state sc_state;
+ char sc_rsp[15]; /* Should be struct rsb; but don't work */
+ u_char *sc_xfptr; /* Current char to xfer */
+ int sc_nbytes; /* Number of bytes to xfer */
+ int sc_xbytes; /* Number of xfer'd bytes */
+ int sc_bbytes; /* Number of xfer'd bytes this block */
+} tu_sc;
+
+void ctutintr __P(());
+void cturintr __P(());
+
+int
+ctuopen(f, adapt, ctlr, unit, part)
+ struct open_file *f;
+ int ctlr, unit, part;
+{
+
+ tu_sc.sc_state = SC_INIT;
+
+ mtpr(RSP_TYP_INIT, PR_CSTD);
+ cturintr();
+ tu_sc.sc_state = SC_READY;
+ return 0;
+
+}
+
+int
+ctustrategy(ra, func, dblk, size, buf, rsize)
+ struct ra_softc *ra;
+ int func;
+ daddr_t dblk;
+ char *buf;
+ u_int size, *rsize;
+{
+ int s;
+
+ struct rsp *rsp = (struct rsp *)tu_sc.sc_rsp;
+
+ tu_sc.sc_xfptr = buf;
+ tu_sc.sc_nbytes = size;
+ tu_sc.sc_xbytes = tu_sc.sc_bbytes = 0;
+
+ rsp->rsp_typ = RSP_TYP_COMMAND;
+ rsp->rsp_sz = 012;
+ rsp->rsp_op = RSP_OP_READ;
+ rsp->rsp_mod = 0;
+ rsp->rsp_drv = 0;
+ rsp->rsp_sw = rsp->rsp_xx1 = rsp->rsp_xx2 = 0;
+ rsp->rsp_cnt = tu_sc.sc_nbytes;
+ rsp->rsp_blk = dblk;
+ rsp->rsp_sum = ctu_cksum(rsp, 6);
+ tu_sc.sc_state = SC_SEND_CMD;
+ while (tu_sc.sc_state != SC_GET_RESP)
+ ctutintr();
+ while (tu_sc.sc_state != SC_READY)
+ cturintr();
+ *rsize = size;
+ return 0;
+}
+
+void
+cturintr()
+{
+ int status;
+
+ while ((mfpr(PR_CSRS) & 0x80) == 0)
+ ;
+
+ status = mfpr(PR_CSRD);
+
+ switch (tu_sc.sc_state) {
+
+ case SC_INIT:
+ break;
+
+ case SC_GET_RESP:
+ if (tu_sc.sc_xbytes == tu_sc.sc_nbytes) {
+ tu_sc.sc_bbytes++;
+ if (tu_sc.sc_bbytes == 146)
+ tu_sc.sc_state = SC_READY;
+ break;
+ }
+ tu_sc.sc_bbytes++;
+ if (tu_sc.sc_bbytes < 3) /* Data header */
+ break;
+ if (tu_sc.sc_bbytes == 132) { /* Finished */
+ tu_sc.sc_bbytes = 0;
+ break;
+ }
+ if (tu_sc.sc_bbytes == 131) /* First checksum */
+ break;
+ tu_sc.sc_xfptr[tu_sc.sc_xbytes++] = status;
+ break;
+
+ }
+
+}
+
+void
+ctutintr()
+{
+ int c;
+
+ while ((mfpr(PR_CSTS) & 0x80) == 0)
+ ;
+
+ c = tu_sc.sc_rsp[tu_sc.sc_xbytes++] & 0xff;
+ mtpr(c, PR_CSTD);
+ if (tu_sc.sc_xbytes > 13) {
+ tu_sc.sc_state = SC_GET_RESP;
+ tu_sc.sc_xbytes = 0;
+ }
+}
+
+ctu_cksum(buf, words)
+ unsigned short *buf;
+ int words;
+{
+ int i, cksum;
+
+ for (i = cksum = 0; i < words; i++)
+ cksum += buf[i];
+
+hej: if (cksum > 65535) {
+ cksum = (cksum & 65535) + (cksum >> 16);
+ goto hej;
+ }
+ return cksum;
+}
diff --git a/sys/arch/vax/boot/devopen.c b/sys/arch/vax/boot/devopen.c
index 6200f477f49..d3468b427dd 100644
--- a/sys/arch/vax/boot/devopen.c
+++ b/sys/arch/vax/boot/devopen.c
@@ -1,4 +1,4 @@
-/* $NetBSD: devopen.c,v 1.3 1995/09/16 13:18:29 ragge Exp $ */
+/* $NetBSD: devopen.c,v 1.4 1996/03/16 11:02:28 ragge Exp $ */
/*-
* Copyright (c) 1993 John Brezak
* All rights reserved.
@@ -182,13 +182,14 @@ devopen(f, fname, file)
{
int n, error;
int dev, ctlr, unit, part;
- int adapt = 0; /* XXX not used on HP */
+ int adapt;
struct devsw *dp = &devsw[0];
dev = B_TYPE(bootdev);
ctlr = B_CONTROLLER(bootdev);
unit = B_UNIT(bootdev);
part = B_PARTITION(bootdev);
+ adapt = B_ADAPTOR(bootdev);
if (error = devparse(fname, &dev, &adapt, &ctlr, &unit, &part, file))
return(error);
diff --git a/sys/arch/vax/boot/hp.c b/sys/arch/vax/boot/hp.c
index c7019a3527d..74400d2470d 100644
--- a/sys/arch/vax/boot/hp.c
+++ b/sys/arch/vax/boot/hp.c
@@ -1,4 +1,4 @@
-/* $NetBSD: hp.c,v 1.4 1995/09/16 15:43:25 ragge Exp $ */
+/* $NetBSD: hp.c,v 1.5 1996/02/17 18:23:22 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -38,12 +38,12 @@
#include "lib/libsa/stand.h"
-#include "../mba/mbareg.h"
-#include "../mba/hpreg.h"
-
#include "../include/pte.h"
#include "../include/macros.h"
+#include "../mba/mbareg.h"
+#include "../mba/hpreg.h"
+
#include "vaxstand.h"
/*
@@ -132,7 +132,7 @@ hpstrategy(hs, func, dblk, size, buf, rsize)
pfnum = (u_int)buf >> PGSHIFT;
for(mapnr = 0, nsize = size; (nsize + NBPG) > 0; nsize -= NBPG)
- mr->mba_map[mapnr++] = PG_V | pfnum++;
+ *(int *)&mr->mba_map[mapnr++] = PG_V | pfnum++;
mr->mba_var = ((u_int)buf & PGOFSET);
mr->mba_bc = (~size) + 1;
diff --git a/sys/arch/vax/boot/ra.c b/sys/arch/vax/boot/ra.c
index a0ecefc1a1b..43e368fe098 100644
--- a/sys/arch/vax/boot/ra.c
+++ b/sys/arch/vax/boot/ra.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ra.c,v 1.3 1995/09/16 13:34:22 ragge Exp $ */
+/* $NetBSD: ra.c,v 1.4 1996/02/17 18:23:23 ragge Exp $ */
/*
* Copyright (c) 1995 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -96,7 +96,7 @@ raopen(f, adapt, ctlr, unit, part)
ra->unit=unit;
ra->part = part;
udacsr=(void*)ra->udaddr;
- nisse=&mr->uba_map[0];
+ nisse=(u_int *)&mr->uba_map[0];
nisse[494]=PG_V|(((u_int)&uda)>>9);
nisse[495]=nisse[494]+1;
ubauda=(void*)0x3dc00+(((u_int)(&uda))&0x1ff);
@@ -163,7 +163,7 @@ rastrategy(ra, func, dblk, size, buf, rsize)
ur = (void *)ra->ubaddr;
udadev = (void*)ra->udaddr;
- ptmapp = &ur->uba_map[0];
+ ptmapp = (u_int *)&ur->uba_map[0];
lp = &ralabel;
pfnum = (u_int)buf >> PGSHIFT;
diff --git a/sys/arch/vax/boot/srt0.s b/sys/arch/vax/boot/srt0.s
index a85d02538ba..1fc8dfca8e3 100644
--- a/sys/arch/vax/boot/srt0.s
+++ b/sys/arch/vax/boot/srt0.s
@@ -1,4 +1,4 @@
-/* $NetBSD: srt0.s,v 1.4 1995/09/16 16:20:20 ragge Exp $ */
+/* $NetBSD: srt0.s,v 1.5 1996/03/07 23:27:10 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -48,11 +48,12 @@ _start: .globl _start
movl $_start, sp # Probably safe place for stack
subl2 $52, sp # do not overwrite saved boot-registers
- subl3 $_start, $_end, r0
- moval _start, r1
- movl $_start, r2
- movc3 r0, (r1), (r2) # should use movc5 instead, to clear bss.
-
+ subl3 $_start, $_edata, r0
+ moval _start, r1
+ subl3 $_start, $_end, r2
+ movl $_start, r3
+ movc5 r0, (r1), $0, r2, (r3)
+
jsb 1f
1: movl $relocated, (sp) # return-address on top of stack
rsb # can be replaced with new address
diff --git a/sys/arch/vax/boot/start.s b/sys/arch/vax/boot/start.s
index 80040a7c2d7..55b2fc0438a 100644
--- a/sys/arch/vax/boot/start.s
+++ b/sys/arch/vax/boot/start.s
@@ -1,4 +1,4 @@
-/* $NetBSD: start.s,v 1.5 1995/10/20 13:35:41 ragge Exp $ */
+/* $NetBSD: start.s,v 1.7 1996/02/02 19:08:33 mycroft Exp $ */
/*
* Copyright (c) 1995 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -36,11 +36,10 @@
/* All bugs are subject to removal without further notice */
-#define LOCORE
+#define _LOCORE
+
#include "sys/disklabel.h"
-#undef LOCORE
-#define ASSEMBLER
#include "../include/mtpr.h"
#include "../include/asm.h"
diff --git a/sys/arch/vax/boot/tmscp.c b/sys/arch/vax/boot/tmscp.c
index eb143e61426..f5d0fe11879 100644
--- a/sys/arch/vax/boot/tmscp.c
+++ b/sys/arch/vax/boot/tmscp.c
@@ -1,4 +1,4 @@
-/* $NetBSD: tmscp.c,v 1.1 1995/09/16 12:57:35 ragge Exp $ */
+/* $NetBSD: tmscp.c,v 1.2 1996/02/17 18:23:24 ragge Exp $ */
/*
* Copyright (c) 1995 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -91,7 +91,7 @@ tmscpopen(f, adapt, ctlr, unit, part)
ra->ubaddr=(int)mr;
ra->unit=unit;
udacsr=(void*)ra->udaddr;
- nisse=&mr->uba_map[0];
+ nisse=(u_int *)&mr->uba_map[0];
nisse[494]=PG_V|(((u_int)&uda)>>9);
nisse[495]=nisse[494]+1;
ubauda=(void*)0x3dc00+(((u_int)(&uda))&0x1ff);
@@ -112,8 +112,8 @@ tmscpopen(f, adapt, ctlr, unit, part)
uda.uda_ca.ca_rspdsc=(int)&ubauda->uda_rsp.mscp_cmdref;
uda.uda_ca.ca_cmddsc=(int)&ubauda->uda_cmd.mscp_cmdref;
- uda.uda_cmd.mscp_un.un_seq.seq_addr = &uda.uda_ca.ca_cmddsc;
- uda.uda_rsp.mscp_un.un_seq.seq_addr = &uda.uda_ca.ca_rspdsc;
+ uda.uda_cmd.mscp_un.un_seq.seq_addr = (long *)&uda.uda_ca.ca_cmddsc;
+ uda.uda_rsp.mscp_un.un_seq.seq_addr = (long *)&uda.uda_ca.ca_rspdsc;
uda.uda_cmd.mscp_vcid = 1;
uda.uda_cmd.mscp_un.un_sccc.sccc_ctlrflags = 0;
@@ -164,7 +164,7 @@ tmscpstrategy(ra, func, dblk, size, buf, rsize)
u_int i,j,pfnum, mapnr, nsize, bn, cn, sn, tn;
volatile struct uba_regs *ur=(void *)ra->ubaddr;
volatile struct udadevice *udadev=(void*)ra->udaddr;
- volatile u_int *ptmapp=&ur->uba_map[0];
+ volatile u_int *ptmapp = (u_int *)&ur->uba_map[0];
volatile int hej;
pfnum=(u_int)buf>>PGSHIFT;
diff --git a/sys/arch/vax/boot/vaxstand.h b/sys/arch/vax/boot/vaxstand.h
index 17ec1cbcd03..f3217fdb235 100644
--- a/sys/arch/vax/boot/vaxstand.h
+++ b/sys/arch/vax/boot/vaxstand.h
@@ -1,4 +1,4 @@
-/* $NetBSD: vaxstand.h,v 1.3 1995/04/25 14:14:34 ragge Exp $ */
+/* $NetBSD: vaxstand.h,v 1.4 1996/02/17 18:23:25 ragge Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -44,8 +44,8 @@ extern int *ubaaddr, *mbaaddr, *udaaddr, *uioaddr;
/* devsw type definitions, used in bootxx and conf */
#define SADEV(name,strategy,open,close,ioctl) \
- { name, \
- (int(*)(void *, int ,daddr_t , u_int , char *, u_int *))strategy, \
+ { (char *)name, \
+ (int(*)(void *, int ,daddr_t , size_t, void *, size_t *))strategy, \
(int(*)(struct open_file *, ...))open, \
(int(*)(struct open_file *))close, \
(int(*)(struct open_file *,u_long, void *))ioctl}