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; ) {