Module Name: src
Committed By: jakllsch
Date: Mon Dec 12 18:22:32 UTC 2022
Modified Files:
src/sys/arch/vax/include: vsbus.h
src/sys/arch/vax/vsa: dz_vsbus.c vsbus.c vsbus_dma.c
Log Message:
vsbus vax: sprinkle volatile for register accesses
To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/vax/include/vsbus.h
cvs rdiff -u -r1.46 -r1.47 src/sys/arch/vax/vsa/dz_vsbus.c
cvs rdiff -u -r1.67 -r1.68 src/sys/arch/vax/vsa/vsbus.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/vax/vsa/vsbus_dma.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/vax/include/vsbus.h
diff -u src/sys/arch/vax/include/vsbus.h:1.20 src/sys/arch/vax/include/vsbus.h:1.21
--- src/sys/arch/vax/include/vsbus.h:1.20 Mon May 22 17:12:11 2017
+++ src/sys/arch/vax/include/vsbus.h Mon Dec 12 18:22:32 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: vsbus.h,v 1.20 2017/05/22 17:12:11 ragge Exp $ */
+/* $NetBSD: vsbus.h,v 1.21 2022/12/12 18:22:32 jakllsch Exp $ */
/*
* Copyright (c) 1996 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -73,9 +73,9 @@ struct vsbus_attach_args {
struct vsbus_softc {
device_t sc_dev;
- u_char *sc_intmsk; /* Mask register */
- u_char *sc_intclr; /* Clear interrupt register */
- u_char *sc_intreq; /* Interrupt request register */
+ volatile u_char *sc_intmsk; /* Mask register */
+ volatile u_char *sc_intclr; /* Clear interrupt register */
+ volatile u_char *sc_intreq; /* Interrupt request register */
u_char sc_mask; /* Interrupts to enable after autoconf */
vaddr_t sc_vsregs; /* Where the VS_REGS are mapped */
vaddr_t sc_dmaaddr; /* Mass storage virtual DMA area */
Index: src/sys/arch/vax/vsa/dz_vsbus.c
diff -u src/sys/arch/vax/vsa/dz_vsbus.c:1.46 src/sys/arch/vax/vsa/dz_vsbus.c:1.47
--- src/sys/arch/vax/vsa/dz_vsbus.c:1.46 Sat Aug 7 16:19:07 2021
+++ src/sys/arch/vax/vsa/dz_vsbus.c Mon Dec 12 18:22:32 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: dz_vsbus.c,v 1.46 2021/08/07 16:19:07 thorpej Exp $ */
+/* $NetBSD: dz_vsbus.c,v 1.47 2022/12/12 18:22:32 jakllsch Exp $ */
/*
* Copyright (c) 1998 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dz_vsbus.c,v 1.46 2021/08/07 16:19:07 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dz_vsbus.c,v 1.47 2022/12/12 18:22:32 jakllsch Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -112,7 +112,7 @@ static int
dz_vsbus_match(device_t parent, cfdata_t cf, void *aux)
{
struct vsbus_attach_args * const va = aux;
- struct ss_dz *dzP;
+ volatile struct ss_dz *dzP;
short i;
#if VAX53 || VAX49 || VAXANY
Index: src/sys/arch/vax/vsa/vsbus.c
diff -u src/sys/arch/vax/vsa/vsbus.c:1.67 src/sys/arch/vax/vsa/vsbus.c:1.68
--- src/sys/arch/vax/vsa/vsbus.c:1.67 Sat Aug 7 16:19:07 2021
+++ src/sys/arch/vax/vsa/vsbus.c Mon Dec 12 18:22:32 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: vsbus.c,v 1.67 2021/08/07 16:19:07 thorpej Exp $ */
+/* $NetBSD: vsbus.c,v 1.68 2022/12/12 18:22:32 jakllsch Exp $ */
/*
* Copyright (c) 1996, 1999 Ludd, University of Lule}, Sweden.
* All rights reserved.
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: vsbus.c,v 1.67 2021/08/07 16:19:07 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: vsbus.c,v 1.68 2022/12/12 18:22:32 jakllsch Exp $");
#include "opt_cputype.h"
@@ -146,7 +146,7 @@ vsbus_attach(device_t parent, device_t s
} else {
dbase = KA420_DMA_BASE;
dsize = KA420_DMA_SIZE;
- *(char *)(sc->sc_vsregs + 0xe0) = 1; /* Big DMA */
+ *(volatile char *)(sc->sc_vsregs + 0xe0) = 1; /* Big DMA */
}
sc->sc_dmasize = dsize;
sc->sc_dmaaddr = uvm_km_alloc(kernel_map, dsize, 0,
Index: src/sys/arch/vax/vsa/vsbus_dma.c
diff -u src/sys/arch/vax/vsa/vsbus_dma.c:1.16 src/sys/arch/vax/vsa/vsbus_dma.c:1.17
--- src/sys/arch/vax/vsa/vsbus_dma.c:1.16 Tue Dec 14 23:31:17 2010
+++ src/sys/arch/vax/vsa/vsbus_dma.c Mon Dec 12 18:22:32 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: vsbus_dma.c,v 1.16 2010/12/14 23:31:17 matt Exp $ */
+/* $NetBSD: vsbus_dma.c,v 1.17 2022/12/12 18:22:32 jakllsch Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: vsbus_dma.c,v 1.16 2010/12/14 23:31:17 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: vsbus_dma.c,v 1.17 2022/12/12 18:22:32 jakllsch Exp $");
#define _VAX_BUS_DMA_PRIVATE
@@ -127,7 +127,7 @@ vsbus_dma_init(struct vsbus_softc *sc, u
"hw sgmap: error=%d", error);
}
memset(pte, 0, mapsize);
- *(int *) (sc->sc_vsregs + 8) = segs->ds_addr; /* set MAP BASE 0x2008008 */
+ *(volatile int *) (sc->sc_vsregs + 8) = segs->ds_addr; /* set MAP BASE 0x2008008 */
} else {
pte = (struct pte *) vax_map_physmem(KA49_SCSIMAP, mapsize / VAX_NBPG);
for (nsegs = ptecnt; nsegs > 0; ) {