Module Name: src Committed By: matt Date: Thu Jun 30 00:53:01 UTC 2011
Modified Files: src/sys/arch/bebox/bebox: machdep.c src/sys/arch/bebox/include: autoconf.h src/sys/arch/bebox/pci: pci_machdep.c src/sys/arch/evbppc/evbppc: evbppc_machdep.c src/sys/arch/evbppc/mpc85xx: machdep.c src/sys/arch/evbppc/pmppc/pci: pci_machdep.c src/sys/arch/ibmnws/ibmnws: machdep.c src/sys/arch/ibmnws/include: autoconf.h src/sys/arch/ibmnws/pci: pci_machdep.c src/sys/arch/macppc/dev: adb.c esp.c gpio.c if_bm.c if_mc.c mediabay.c mesh.c nvram.c zs.c src/sys/arch/macppc/include: autoconf.h src/sys/arch/macppc/macppc: cpu.c src/sys/arch/macppc/pci: bandit.c grackle.c u3.c uninorth.c src/sys/arch/mvmeppc/include: autoconf.h src/sys/arch/mvmeppc/mvmeppc: machdep.c src/sys/arch/mvmeppc/pci: pci_machdep.c src/sys/arch/ofppc/ofppc: mainbus.c src/sys/arch/powerpc/booke: booke_machdep.c booke_stubs.c e500_tlb.c src/sys/arch/powerpc/ibm4xx: pmap.c src/sys/arch/powerpc/include: cpu.h src/sys/arch/powerpc/include/booke: cpuvar.h pmap.h pte.h src/sys/arch/powerpc/include/ibm4xx: pmap.h src/sys/arch/powerpc/include/oea: pmap.h src/sys/arch/powerpc/oea: oea_machdep.c pmap.c pmap_kernel.c src/sys/arch/powerpc/pci: pchb.c src/sys/arch/powerpc/powerpc: bus_dma.c bus_space.c src/sys/arch/prep/include: autoconf.h src/sys/arch/prep/pci: pci_machdep.c src/sys/arch/prep/prep: machdep.c src/sys/arch/rs6000/include: autoconf.h Log Message: Modify mapiodev to take a third argument indicating whether the space should be prefetchable (true) or not (false). To generate a diff of this commit: cvs rdiff -u -r1.100 -r1.101 src/sys/arch/bebox/bebox/machdep.c cvs rdiff -u -r1.3 -r1.4 src/sys/arch/bebox/include/autoconf.h cvs rdiff -u -r1.19 -r1.20 src/sys/arch/bebox/pci/pci_machdep.c cvs rdiff -u -r1.11 -r1.12 src/sys/arch/evbppc/evbppc/evbppc_machdep.c cvs rdiff -u -r1.14 -r1.15 src/sys/arch/evbppc/mpc85xx/machdep.c cvs rdiff -u -r1.4 -r1.5 src/sys/arch/evbppc/pmppc/pci/pci_machdep.c cvs rdiff -u -r1.15 -r1.16 src/sys/arch/ibmnws/ibmnws/machdep.c cvs rdiff -u -r1.5 -r1.6 src/sys/arch/ibmnws/include/autoconf.h cvs rdiff -u -r1.7 -r1.8 src/sys/arch/ibmnws/pci/pci_machdep.c cvs rdiff -u -r1.30 -r1.31 src/sys/arch/macppc/dev/adb.c \ src/sys/arch/macppc/dev/esp.c cvs rdiff -u -r1.10 -r1.11 src/sys/arch/macppc/dev/gpio.c cvs rdiff -u -r1.44 -r1.45 src/sys/arch/macppc/dev/if_bm.c cvs rdiff -u -r1.19 -r1.20 src/sys/arch/macppc/dev/if_mc.c cvs rdiff -u -r1.20 -r1.21 src/sys/arch/macppc/dev/mediabay.c cvs rdiff -u -r1.34 -r1.35 src/sys/arch/macppc/dev/mesh.c cvs rdiff -u -r1.16 -r1.17 src/sys/arch/macppc/dev/nvram.c cvs rdiff -u -r1.49 -r1.50 src/sys/arch/macppc/dev/zs.c cvs rdiff -u -r1.16 -r1.17 src/sys/arch/macppc/include/autoconf.h cvs rdiff -u -r1.57 -r1.58 src/sys/arch/macppc/macppc/cpu.c cvs rdiff -u -r1.28 -r1.29 src/sys/arch/macppc/pci/bandit.c cvs rdiff -u -r1.13 -r1.14 src/sys/arch/macppc/pci/grackle.c cvs rdiff -u -r1.4 -r1.5 src/sys/arch/macppc/pci/u3.c cvs rdiff -u -r1.14 -r1.15 src/sys/arch/macppc/pci/uninorth.c cvs rdiff -u -r1.4 -r1.5 src/sys/arch/mvmeppc/include/autoconf.h cvs rdiff -u -r1.28 -r1.29 src/sys/arch/mvmeppc/mvmeppc/machdep.c cvs rdiff -u -r1.8 -r1.9 src/sys/arch/mvmeppc/pci/pci_machdep.c cvs rdiff -u -r1.27 -r1.28 src/sys/arch/ofppc/ofppc/mainbus.c cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/booke/booke_machdep.c cvs rdiff -u -r1.8 -r1.9 src/sys/arch/powerpc/booke/booke_stubs.c cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/booke/e500_tlb.c cvs rdiff -u -r1.69 -r1.70 src/sys/arch/powerpc/ibm4xx/pmap.c cvs rdiff -u -r1.87 -r1.88 src/sys/arch/powerpc/include/cpu.h cvs rdiff -u -r1.11 -r1.12 src/sys/arch/powerpc/include/booke/cpuvar.h cvs rdiff -u -r1.7 -r1.8 src/sys/arch/powerpc/include/booke/pmap.h cvs rdiff -u -r1.5 -r1.6 src/sys/arch/powerpc/include/booke/pte.h cvs rdiff -u -r1.16 -r1.17 src/sys/arch/powerpc/include/ibm4xx/pmap.h cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/include/oea/pmap.h cvs rdiff -u -r1.58 -r1.59 src/sys/arch/powerpc/oea/oea_machdep.c cvs rdiff -u -r1.80 -r1.81 src/sys/arch/powerpc/oea/pmap.c cvs rdiff -u -r1.8 -r1.9 src/sys/arch/powerpc/oea/pmap_kernel.c cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/pci/pchb.c cvs rdiff -u -r1.41 -r1.42 src/sys/arch/powerpc/powerpc/bus_dma.c cvs rdiff -u -r1.27 -r1.28 src/sys/arch/powerpc/powerpc/bus_space.c cvs rdiff -u -r1.8 -r1.9 src/sys/arch/prep/include/autoconf.h cvs rdiff -u -r1.35 -r1.36 src/sys/arch/prep/pci/pci_machdep.c cvs rdiff -u -r1.72 -r1.73 src/sys/arch/prep/prep/machdep.c cvs rdiff -u -r1.1 -r1.2 src/sys/arch/rs6000/include/autoconf.h 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/bebox/bebox/machdep.c diff -u src/sys/arch/bebox/bebox/machdep.c:1.100 src/sys/arch/bebox/bebox/machdep.c:1.101 --- src/sys/arch/bebox/bebox/machdep.c:1.100 Mon Jun 20 07:18:05 2011 +++ src/sys/arch/bebox/bebox/machdep.c Thu Jun 30 00:52:55 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.100 2011/06/20 07:18:05 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.101 2011/06/30 00:52:55 matt Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.100 2011/06/20 07:18:05 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.101 2011/06/30 00:52:55 matt Exp $"); #include "opt_compat_netbsd.h" #include "opt_ddb.h" @@ -170,7 +170,7 @@ /* * BeBox Mother Board's Register Mapping */ - bebox_mb_reg = (vaddr_t) mapiodev(BEBOX_INTR_REG, PAGE_SIZE); + bebox_mb_reg = (vaddr_t) mapiodev(BEBOX_INTR_REG, PAGE_SIZE, false); if (!bebox_mb_reg) panic("cpu_startup: no room for interrupt register"); Index: src/sys/arch/bebox/include/autoconf.h diff -u src/sys/arch/bebox/include/autoconf.h:1.3 src/sys/arch/bebox/include/autoconf.h:1.4 --- src/sys/arch/bebox/include/autoconf.h:1.3 Wed Oct 17 19:53:59 2007 +++ src/sys/arch/bebox/include/autoconf.h Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.3 2007/10/17 19:53:59 garbled Exp $ */ +/* $NetBSD: autoconf.h,v 1.4 2011/06/30 00:52:56 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -44,5 +44,4 @@ /* bus_space_tag_t ca_tag; */ }; -extern void *mapiodev(paddr_t, psize_t); extern paddr_t kvtop(void *); Index: src/sys/arch/bebox/pci/pci_machdep.c diff -u src/sys/arch/bebox/pci/pci_machdep.c:1.19 src/sys/arch/bebox/pci/pci_machdep.c:1.20 --- src/sys/arch/bebox/pci/pci_machdep.c:1.19 Wed Jun 22 18:06:32 2011 +++ src/sys/arch/bebox/pci/pci_machdep.c Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pci_machdep.c,v 1.19 2011/06/22 18:06:32 matt Exp $ */ +/* $NetBSD: pci_machdep.c,v 1.20 2011/06/30 00:52:56 matt Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -39,7 +39,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.19 2011/06/22 18:06:32 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.20 2011/06/30 00:52:56 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -92,8 +92,8 @@ pc->pc_decompose_tag = genppc_pci_indirect_decompose_tag; pc->pc_conf_hook = genppc_pci_conf_hook; - pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4); - pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4); + pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4, false); + pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4, false); pc->pc_bus = 0; pc->pc_node = 0; pc->pc_memt = 0; Index: src/sys/arch/evbppc/evbppc/evbppc_machdep.c diff -u src/sys/arch/evbppc/evbppc/evbppc_machdep.c:1.11 src/sys/arch/evbppc/evbppc/evbppc_machdep.c:1.12 --- src/sys/arch/evbppc/evbppc/evbppc_machdep.c:1.11 Sun Jun 12 04:20:18 2011 +++ src/sys/arch/evbppc/evbppc/evbppc_machdep.c Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: evbppc_machdep.c,v 1.11 2011/06/12 04:20:18 mrg Exp $ */ +/* $NetBSD: evbppc_machdep.c,v 1.12 2011/06/30 00:52:56 matt Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -67,7 +67,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: evbppc_machdep.c,v 1.11 2011/06/12 04:20:18 mrg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: evbppc_machdep.c,v 1.12 2011/06/30 00:52:56 matt Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -94,13 +94,15 @@ * mapping if one is found. */ void * -mapiodev(paddr_t pa, psize_t len) +mapiodev(paddr_t pa, psize_t len, bool prefetchable) { void *p; paddr_t faddr; vaddr_t taddr, va; int off; + KASSERT(!prefetchable); + /* * See if we have reserved TLB entry for the pa. This needs to be * true for console as we can't use uvm during early bootstrap. @@ -123,7 +125,7 @@ for (; len > 0; len -= PAGE_SIZE) { pmap_kenter_pa(taddr, faddr, - VM_PROT_READ|VM_PROT_WRITE|PME_NOCACHE, 0); + VM_PROT_READ|VM_PROT_WRITE, PMAP_NOCACHE); faddr += PAGE_SIZE; taddr += PAGE_SIZE; } Index: src/sys/arch/evbppc/mpc85xx/machdep.c diff -u src/sys/arch/evbppc/mpc85xx/machdep.c:1.14 src/sys/arch/evbppc/mpc85xx/machdep.c:1.15 --- src/sys/arch/evbppc/mpc85xx/machdep.c:1.14 Wed Jun 29 05:53:05 2011 +++ src/sys/arch/evbppc/mpc85xx/machdep.c Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.14 2011/06/29 05:53:05 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.15 2011/06/30 00:52:56 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -398,8 +398,10 @@ } static void * -gur_tlb_mapiodev(paddr_t pa, psize_t len) +gur_tlb_mapiodev(paddr_t pa, psize_t len, bool prefetchable) { + if (prefetchable) + return NULL; if (pa < gur_bst.pbs_offset) return NULL; if (pa + len > gur_bst.pbs_offset + gur_bst.pbs_limit) @@ -407,7 +409,7 @@ return (void *)pa; } -static void *(* const early_tlb_mapiodev)(paddr_t, psize_t) = gur_tlb_mapiodev; +static void *(* const early_tlb_mapiodev)(paddr_t, psize_t, bool) = gur_tlb_mapiodev; static void e500_cpu_reset(void) Index: src/sys/arch/evbppc/pmppc/pci/pci_machdep.c diff -u src/sys/arch/evbppc/pmppc/pci/pci_machdep.c:1.4 src/sys/arch/evbppc/pmppc/pci/pci_machdep.c:1.5 --- src/sys/arch/evbppc/pmppc/pci/pci_machdep.c:1.4 Wed Jun 22 18:06:32 2011 +++ src/sys/arch/evbppc/pmppc/pci/pci_machdep.c Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pci_machdep.c,v 1.4 2011/06/22 18:06:32 matt Exp $ */ +/* $NetBSD: pci_machdep.c,v 1.5 2011/06/30 00:52:56 matt Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -43,7 +43,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.4 2011/06/22 18:06:32 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.5 2011/06/30 00:52:56 matt Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -109,8 +109,8 @@ pc->pc_decompose_tag = genppc_pci_indirect_decompose_tag; pc->pc_conf_hook = genppc_pci_conf_hook; - pc->pc_addr = mapiodev(CPC_PCICFGADR, 4); - pc->pc_data = mapiodev(CPC_PCICFGDATA, 4); + pc->pc_addr = mapiodev(CPC_PCICFGADR, 4, false); + pc->pc_data = mapiodev(CPC_PCICFGDATA, 4, false); pc->pc_bus = 0; pc->pc_node = 0; pc->pc_memt = 0; Index: src/sys/arch/ibmnws/ibmnws/machdep.c diff -u src/sys/arch/ibmnws/ibmnws/machdep.c:1.15 src/sys/arch/ibmnws/ibmnws/machdep.c:1.16 --- src/sys/arch/ibmnws/ibmnws/machdep.c:1.15 Mon Jun 20 07:18:06 2011 +++ src/sys/arch/ibmnws/ibmnws/machdep.c Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.15 2011/06/20 07:18:06 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.16 2011/06/30 00:52:56 matt Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.15 2011/06/20 07:18:06 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.16 2011/06/30 00:52:56 matt Exp $"); #include "opt_compat_netbsd.h" @@ -160,7 +160,7 @@ /* * Mapping PReP interrput vector register. */ - prep_intr_reg = (vaddr_t) mapiodev(PREP_INTR_REG, PAGE_SIZE); + prep_intr_reg = (vaddr_t) mapiodev(PREP_INTR_REG, PAGE_SIZE, false); if (!prep_intr_reg) panic("startup: no room for interrupt register"); prep_intr_reg_off = INTR_VECTOR_REG; Index: src/sys/arch/ibmnws/include/autoconf.h diff -u src/sys/arch/ibmnws/include/autoconf.h:1.5 src/sys/arch/ibmnws/include/autoconf.h:1.6 --- src/sys/arch/ibmnws/include/autoconf.h:1.5 Sun Mar 4 06:00:03 2007 +++ src/sys/arch/ibmnws/include/autoconf.h Thu Jun 30 00:52:56 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.5 2007/03/04 06:00:03 christos Exp $ */ +/* $NetBSD: autoconf.h,v 1.6 2011/06/30 00:52:56 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -43,6 +43,5 @@ /* bus_space_tag_t ca_tag; */ }; -extern void *mapiodev(paddr_t, psize_t); -extern paddr_t kvtop(void *); -extern void *intr_establish(int, int, int, int (*)(void *), void *); +paddr_t kvtop(void *); +void *intr_establish(int, int, int, int (*)(void *), void *); Index: src/sys/arch/ibmnws/pci/pci_machdep.c diff -u src/sys/arch/ibmnws/pci/pci_machdep.c:1.7 src/sys/arch/ibmnws/pci/pci_machdep.c:1.8 --- src/sys/arch/ibmnws/pci/pci_machdep.c:1.7 Wed Jun 22 18:06:33 2011 +++ src/sys/arch/ibmnws/pci/pci_machdep.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pci_machdep.c,v 1.7 2011/06/22 18:06:33 matt Exp $ */ +/* $NetBSD: pci_machdep.c,v 1.8 2011/06/30 00:52:57 matt Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -84,8 +84,8 @@ pc->pc_decompose_tag = genppc_pci_indirect_decompose_tag; pc->pc_conf_hook = ibmnws_pci_conf_hook; - pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4); - pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4); + pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4, false); + pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4, false); pc->pc_bus = 0; pc->pc_node = 0; pc->pc_memt = 0; Index: src/sys/arch/macppc/dev/adb.c diff -u src/sys/arch/macppc/dev/adb.c:1.30 src/sys/arch/macppc/dev/adb.c:1.31 --- src/sys/arch/macppc/dev/adb.c:1.30 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/adb.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: adb.c,v 1.30 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: adb.c,v 1.31 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1994 Bradley A. Grantham @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: adb.c,v 1.30 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: adb.c,v 1.31 2011/06/30 00:52:57 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -111,7 +111,7 @@ ca->ca_reg[0] += ca->ca_baseaddr; - sc->sc_regbase = mapiodev(ca->ca_reg[0], ca->ca_reg[1]); + sc->sc_regbase = mapiodev(ca->ca_reg[0], ca->ca_reg[1], false); Via1Base = sc->sc_regbase; if (strcmp(ca->ca_name, "via-cuda") == 0) Index: src/sys/arch/macppc/dev/esp.c diff -u src/sys/arch/macppc/dev/esp.c:1.30 src/sys/arch/macppc/dev/esp.c:1.31 --- src/sys/arch/macppc/dev/esp.c:1.30 Mon Dec 20 00:25:37 2010 +++ src/sys/arch/macppc/dev/esp.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: esp.c,v 1.30 2010/12/20 00:25:37 matt Exp $ */ +/* $NetBSD: esp.c,v 1.31 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc. @@ -70,7 +70,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: esp.c,v 1.30 2010/12/20 00:25:37 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: esp.c,v 1.31 2011/06/30 00:52:57 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -180,8 +180,8 @@ * Map my registers in. */ reg = ca->ca_reg; - esc->sc_reg = mapiodev(ca->ca_baseaddr + reg[0], reg[1]); - esc->sc_dmareg = mapiodev(ca->ca_baseaddr + reg[2], reg[3]); + esc->sc_reg = mapiodev(ca->ca_baseaddr + reg[0], reg[1], false); + esc->sc_dmareg = mapiodev(ca->ca_baseaddr + reg[2], reg[3], false); /* Allocate 16-byte aligned DMA command space */ esc->sc_dmacmd = dbdma_alloc(sizeof(dbdma_command_t) * 20); Index: src/sys/arch/macppc/dev/gpio.c diff -u src/sys/arch/macppc/dev/gpio.c:1.10 src/sys/arch/macppc/dev/gpio.c:1.11 --- src/sys/arch/macppc/dev/gpio.c:1.10 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/gpio.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: gpio.c,v 1.10 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: gpio.c,v 1.11 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: gpio.c,v 1.10 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: gpio.c,v 1.11 2011/06/30 00:52:57 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -95,7 +95,8 @@ printf("\n"); - sc->sc_port = mapiodev(ca->ca_baseaddr + ca->ca_reg[0], ca->ca_reg[1]); + sc->sc_port = mapiodev(ca->ca_baseaddr + ca->ca_reg[0], ca->ca_reg[1], + false); ca2.ca_baseaddr = ca->ca_baseaddr; for (child = OF_child(ca->ca_node); child; child = OF_peer(child)) { Index: src/sys/arch/macppc/dev/if_bm.c diff -u src/sys/arch/macppc/dev/if_bm.c:1.44 src/sys/arch/macppc/dev/if_bm.c:1.45 --- src/sys/arch/macppc/dev/if_bm.c:1.44 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/if_bm.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: if_bm.c,v 1.44 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: if_bm.c,v 1.45 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1998, 1999, 2000 Tsubai Masanari. All rights reserved. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_bm.c,v 1.44 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_bm.c,v 1.45 2011/06/30 00:52:57 matt Exp $"); #include "opt_inet.h" @@ -212,8 +212,8 @@ } memcpy(sc->sc_enaddr, laddr, 6); - sc->sc_txdma = mapiodev(ca->ca_reg[2], PAGE_SIZE); - sc->sc_rxdma = mapiodev(ca->ca_reg[4], PAGE_SIZE); + sc->sc_txdma = mapiodev(ca->ca_reg[2], PAGE_SIZE, false); + sc->sc_rxdma = mapiodev(ca->ca_reg[4], PAGE_SIZE, false); sc->sc_txcmd = dbdma_alloc(BMAC_TXBUFS * sizeof(dbdma_command_t)); sc->sc_rxcmd = dbdma_alloc((BMAC_RXBUFS + 1) * sizeof(dbdma_command_t)); sc->sc_txbuf = malloc(BMAC_BUFLEN * BMAC_TXBUFS, M_DEVBUF, M_NOWAIT); Index: src/sys/arch/macppc/dev/if_mc.c diff -u src/sys/arch/macppc/dev/if_mc.c:1.19 src/sys/arch/macppc/dev/if_mc.c:1.20 --- src/sys/arch/macppc/dev/if_mc.c:1.19 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/if_mc.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: if_mc.c,v 1.19 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: if_mc.c,v 1.20 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (c) 1997 David Huang <k...@bga.com> @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_mc.c,v 1.19 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_mc.c,v 1.20 2011/06/30 00:52:57 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -117,8 +117,8 @@ reg[2] += ca->ca_baseaddr; reg[4] += ca->ca_baseaddr; - sc->sc_txdma = mapiodev(reg[2], reg[3]); - sc->sc_rxdma = mapiodev(reg[4], reg[5]); + sc->sc_txdma = mapiodev(reg[2], reg[3], false); + sc->sc_rxdma = mapiodev(reg[4], reg[5], false); bus_space_map(sc->sc_regt, reg[0], reg[1], 0, &sc->sc_regh); sc->sc_tail = 0; Index: src/sys/arch/macppc/dev/mediabay.c diff -u src/sys/arch/macppc/dev/mediabay.c:1.20 src/sys/arch/macppc/dev/mediabay.c:1.21 --- src/sys/arch/macppc/dev/mediabay.c:1.20 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/mediabay.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: mediabay.c,v 1.20 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: mediabay.c,v 1.21 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1999 Tsubai Masanari. All rights reserved. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mediabay.c,v 1.20 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mediabay.c,v 1.21 2011/06/30 00:52:57 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -124,7 +124,7 @@ ca->ca_reg[0] += ca->ca_baseaddr; - sc->sc_addr = mapiodev(ca->ca_reg[0], PAGE_SIZE); + sc->sc_addr = mapiodev(ca->ca_reg[0], PAGE_SIZE, false); sc->sc_node = ca->ca_node; sc->sc_baseaddr = ca->ca_baseaddr; sc->sc_tag = ca->ca_tag; Index: src/sys/arch/macppc/dev/mesh.c diff -u src/sys/arch/macppc/dev/mesh.c:1.34 src/sys/arch/macppc/dev/mesh.c:1.35 --- src/sys/arch/macppc/dev/mesh.c:1.34 Sat Sep 26 15:49:45 2009 +++ src/sys/arch/macppc/dev/mesh.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: mesh.c,v 1.34 2009/09/26 15:49:45 tsutsui Exp $ */ +/* $NetBSD: mesh.c,v 1.35 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (c) 2000 Tsubai Masanari. @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mesh.c,v 1.34 2009/09/26 15:49:45 tsutsui Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mesh.c,v 1.35 2011/06/30 00:52:57 matt Exp $"); #include <sys/param.h> #include <sys/buf.h> @@ -211,9 +211,9 @@ reg = ca->ca_reg; reg[0] += ca->ca_baseaddr; reg[2] += ca->ca_baseaddr; - sc->sc_reg = mapiodev(reg[0], reg[1]); + sc->sc_reg = mapiodev(reg[0], reg[1], false); sc->sc_irq = ca->ca_intr[0]; - sc->sc_dmareg = mapiodev(reg[2], reg[3]); + sc->sc_dmareg = mapiodev(reg[2], reg[3], false); sc->sc_cfflags = device_cfdata(self)->cf_flags; sc->sc_meshid = mesh_read_reg(sc, MESH_MESH_ID) & 0x1f; Index: src/sys/arch/macppc/dev/nvram.c diff -u src/sys/arch/macppc/dev/nvram.c:1.16 src/sys/arch/macppc/dev/nvram.c:1.17 --- src/sys/arch/macppc/dev/nvram.c:1.16 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/dev/nvram.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: nvram.c,v 1.16 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: nvram.c,v 1.17 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nvram.c,v 1.16 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nvram.c,v 1.17 2011/06/30 00:52:57 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -103,13 +103,13 @@ case 8: /* untested */ sc->nv_type = NVRAM_IOMEM; - sc->nv_data = mapiodev(ca->ca_baseaddr + reg[0], reg[1]); + sc->nv_data = mapiodev(ca->ca_baseaddr + reg[0], reg[1], false); break; case 16: sc->nv_type = NVRAM_PORT; - sc->nv_port = mapiodev(ca->ca_baseaddr + reg[0], reg[1]); - sc->nv_data = mapiodev(ca->ca_baseaddr + reg[2], reg[3]); + sc->nv_port = mapiodev(ca->ca_baseaddr + reg[0], reg[1], false); + sc->nv_data = mapiodev(ca->ca_baseaddr + reg[2], reg[3], false); break; case 0: Index: src/sys/arch/macppc/dev/zs.c diff -u src/sys/arch/macppc/dev/zs.c:1.49 src/sys/arch/macppc/dev/zs.c:1.50 --- src/sys/arch/macppc/dev/zs.c:1.49 Tue Oct 27 03:45:32 2009 +++ src/sys/arch/macppc/dev/zs.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: zs.c,v 1.49 2009/10/27 03:45:32 snj Exp $ */ +/* $NetBSD: zs.c,v 1.50 2011/06/30 00:52:57 matt Exp $ */ /* * Copyright (c) 1996, 1998 Bill Studenmund @@ -49,7 +49,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: zs.c,v 1.49 2009/10/27 03:45:32 snj Exp $"); +__KERNEL_RCSID(0, "$NetBSD: zs.c,v 1.50 2011/06/30 00:52:57 matt Exp $"); #include "opt_ddb.h" #include "opt_kgdb.h" @@ -218,7 +218,7 @@ chip = 0; ca->ca_reg[0] += ca->ca_baseaddr; - zsd = mapiodev(ca->ca_reg[0], ca->ca_reg[1]); + zsd = mapiodev(ca->ca_reg[0], ca->ca_reg[1], false); node = OF_child(ca->ca_node); /* ch-a */ @@ -238,7 +238,7 @@ regs[2] += ca->ca_baseaddr; regs[4] += ca->ca_baseaddr; #ifdef ZS_TXDMA - zsc->zsc_txdmareg[channel] = mapiodev(regs[2], regs[3]); + zsc->zsc_txdmareg[channel] = mapiodev(regs[2], regs[3], false); zsc->zsc_txdmacmd[channel] = dbdma_alloc(sizeof(dbdma_command_t) * 3); memset(zsc->zsc_txdmacmd[channel], 0, Index: src/sys/arch/macppc/include/autoconf.h diff -u src/sys/arch/macppc/include/autoconf.h:1.16 src/sys/arch/macppc/include/autoconf.h:1.17 --- src/sys/arch/macppc/include/autoconf.h:1.16 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/include/autoconf.h Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.16 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: autoconf.h,v 1.17 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -62,7 +62,6 @@ /* these are in machdep.c */ void initppc(u_int, u_int, char *); void model_init(void); -void *mapiodev(paddr_t, psize_t); paddr_t kvtop(void *); void dumpsys(void); void copy_disp_props(device_t, int, prop_dictionary_t); Index: src/sys/arch/macppc/macppc/cpu.c diff -u src/sys/arch/macppc/macppc/cpu.c:1.57 src/sys/arch/macppc/macppc/cpu.c:1.58 --- src/sys/arch/macppc/macppc/cpu.c:1.57 Wed Jun 29 06:13:08 2011 +++ src/sys/arch/macppc/macppc/cpu.c Thu Jun 30 00:52:57 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.c,v 1.57 2011/06/29 06:13:08 matt Exp $ */ +/* $NetBSD: cpu.c,v 1.58 2011/06/30 00:52:57 matt Exp $ */ /*- * Copyright (c) 2001 Tsubai Masanari. @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.57 2011/06/29 06:13:08 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.58 2011/06/30 00:52:57 matt Exp $"); #include "opt_ppcparam.h" #include "opt_multiprocessor.h" @@ -189,7 +189,7 @@ volatile uint32_t *cache_reg, x; /* enable L2 cache */ - cache_reg = mapiodev(CACHE_REG, PAGE_SIZE); + cache_reg = mapiodev(CACHE_REG, PAGE_SIZE, false); if (((cache_reg[2] >> 24) & 0x0f) >= 3) { x = cache_reg[4]; if ((x & 0x10) == 0) Index: src/sys/arch/macppc/pci/bandit.c diff -u src/sys/arch/macppc/pci/bandit.c:1.28 src/sys/arch/macppc/pci/bandit.c:1.29 --- src/sys/arch/macppc/pci/bandit.c:1.28 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/pci/bandit.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: bandit.c,v 1.28 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: bandit.c,v 1.29 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2000 Tsubai Masanari. All rights reserved. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bandit.c,v 1.28 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bandit.c,v 1.29 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -126,8 +126,8 @@ pc->pc_node = node; pc->pc_iot = &sc->sc_iot; pc->pc_memt = &sc->sc_memt; - pc->pc_addr = mapiodev(reg[0] + 0x800000, 4); - pc->pc_data = mapiodev(reg[0] + 0xc00000, 8); + pc->pc_addr = mapiodev(reg[0] + 0x800000, 4, false); + pc->pc_data = mapiodev(reg[0] + 0xc00000, 8, false); pc->pc_bus = busrange[0]; pc->pc_conf_read = bandit_conf_read; pc->pc_conf_write = bandit_conf_write; Index: src/sys/arch/macppc/pci/grackle.c diff -u src/sys/arch/macppc/pci/grackle.c:1.13 src/sys/arch/macppc/pci/grackle.c:1.14 --- src/sys/arch/macppc/pci/grackle.c:1.13 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/pci/grackle.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: grackle.c,v 1.13 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: grackle.c,v 1.14 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2000 Tsubai Masanari. All rights reserved. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: grackle.c,v 1.13 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: grackle.c,v 1.14 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -126,8 +126,8 @@ macppc_pci_get_chipset_tag(pc); pc->pc_node = node; - pc->pc_addr = mapiodev(GRACKLE_ADDR, 4); - pc->pc_data = mapiodev(GRACKLE_DATA, 4); + pc->pc_addr = mapiodev(GRACKLE_ADDR, 4, false); + pc->pc_data = mapiodev(GRACKLE_DATA, 4, false); pc->pc_bus = busrange[0]; pc->pc_conf_read = grackle_conf_read; pc->pc_conf_write = grackle_conf_write; Index: src/sys/arch/macppc/pci/u3.c diff -u src/sys/arch/macppc/pci/u3.c:1.4 src/sys/arch/macppc/pci/u3.c:1.5 --- src/sys/arch/macppc/pci/u3.c:1.4 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/pci/u3.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: u3.c,v 1.4 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: u3.c,v 1.5 2011/06/30 00:52:58 matt Exp $ */ /* * Copyright 2006 Kyma Systems LLC. @@ -104,7 +104,7 @@ } aprint_normal("Mapping in config space @ pa 0x%08x, size: 0x%08x\n", reg[1], reg[2]); - pc_data = mapiodev(reg[1], reg[2]); + pc_data = mapiodev(reg[1], reg[2], false); for (child = OF_child(OF_finddevice("/ht")), i = 1; child; child = OF_peer(child), i++) { Index: src/sys/arch/macppc/pci/uninorth.c diff -u src/sys/arch/macppc/pci/uninorth.c:1.14 src/sys/arch/macppc/pci/uninorth.c:1.15 --- src/sys/arch/macppc/pci/uninorth.c:1.14 Sat Jun 18 08:08:28 2011 +++ src/sys/arch/macppc/pci/uninorth.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: uninorth.c,v 1.14 2011/06/18 08:08:28 matt Exp $ */ +/* $NetBSD: uninorth.c,v 1.15 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2000 Tsubai Masanari. All rights reserved. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: uninorth.c,v 1.14 2011/06/18 08:08:28 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uninorth.c,v 1.15 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -138,8 +138,8 @@ macppc_pci_get_chipset_tag(pc); pc->pc_node = node; - pc->pc_addr = mapiodev(reg[0] + 0x800000, 4); - pc->pc_data = mapiodev(reg[0] + 0xc00000, 8); + pc->pc_addr = mapiodev(reg[0] + 0x800000, 4, false); + pc->pc_data = mapiodev(reg[0] + 0xc00000, 8, false); pc->pc_bus = busrange[0]; pc->pc_conf_read = uninorth_conf_read; pc->pc_conf_write = uninorth_conf_write; Index: src/sys/arch/mvmeppc/include/autoconf.h diff -u src/sys/arch/mvmeppc/include/autoconf.h:1.4 src/sys/arch/mvmeppc/include/autoconf.h:1.5 --- src/sys/arch/mvmeppc/include/autoconf.h:1.4 Sat Mar 14 14:46:03 2009 +++ src/sys/arch/mvmeppc/include/autoconf.h Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.4 2009/03/14 14:46:03 dsl Exp $ */ +/* $NetBSD: autoconf.h,v 1.5 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -43,6 +43,5 @@ /* bus_space_tag_t ca_tag; */ }; -void *mapiodev(paddr_t, psize_t); paddr_t kvtop(void *); void *intr_establish(int, int, int, int (*)(void *), void *); Index: src/sys/arch/mvmeppc/mvmeppc/machdep.c diff -u src/sys/arch/mvmeppc/mvmeppc/machdep.c:1.28 src/sys/arch/mvmeppc/mvmeppc/machdep.c:1.29 --- src/sys/arch/mvmeppc/mvmeppc/machdep.c:1.28 Mon Jun 20 07:18:07 2011 +++ src/sys/arch/mvmeppc/mvmeppc/machdep.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.28 2011/06/20 07:18:07 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.29 2011/06/30 00:52:58 matt Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.28 2011/06/20 07:18:07 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.29 2011/06/30 00:52:58 matt Exp $"); #include "opt_compat_netbsd.h" #include "opt_mvmetype.h" @@ -164,7 +164,7 @@ /* * Mapping PReP-compatible interrput vector register. */ - prep_intr_reg = (vaddr_t) mapiodev(MVMEPPC_INTR_REG, PAGE_SIZE); + prep_intr_reg = (vaddr_t) mapiodev(MVMEPPC_INTR_REG, PAGE_SIZE, false); if (!prep_intr_reg) panic("startup: no room for interrupt register"); Index: src/sys/arch/mvmeppc/pci/pci_machdep.c diff -u src/sys/arch/mvmeppc/pci/pci_machdep.c:1.8 src/sys/arch/mvmeppc/pci/pci_machdep.c:1.9 --- src/sys/arch/mvmeppc/pci/pci_machdep.c:1.8 Wed Jun 22 18:06:33 2011 +++ src/sys/arch/mvmeppc/pci/pci_machdep.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pci_machdep.c,v 1.8 2011/06/22 18:06:33 matt Exp $ */ +/* $NetBSD: pci_machdep.c,v 1.9 2011/06/30 00:52:58 matt Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -39,7 +39,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.8 2011/06/22 18:06:33 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.9 2011/06/30 00:52:58 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -93,8 +93,8 @@ pc->pc_decompose_tag = genppc_pci_indirect_decompose_tag; pc->pc_conf_hook = genppc_pci_conf_hook; - pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4); - pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4); + pc->pc_addr = mapiodev(PCI_MODE1_ADDRESS_REG, 4, false); + pc->pc_data = mapiodev(PCI_MODE1_DATA_REG, 4, false); pc->pc_bus = 0; pc->pc_node = 0; pc->pc_memt = 0; Index: src/sys/arch/ofppc/ofppc/mainbus.c diff -u src/sys/arch/ofppc/ofppc/mainbus.c:1.27 src/sys/arch/ofppc/ofppc/mainbus.c:1.28 --- src/sys/arch/ofppc/ofppc/mainbus.c:1.27 Sun Jun 5 17:03:16 2011 +++ src/sys/arch/ofppc/ofppc/mainbus.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: mainbus.c,v 1.27 2011/06/05 17:03:16 matt Exp $ */ +/* $NetBSD: mainbus.c,v 1.28 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.27 2011/06/05 17:03:16 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.28 2011/06/30 00:52:58 matt Exp $"); #include "opt_interrupt.h" #include "opt_multiprocessor.h" @@ -83,7 +83,7 @@ aprint_error("Incorrectly identified i8259 as prepivr\n"); return setup_i8259(); } - prep_intr_reg = (vaddr_t)mapiodev(ivr, sizeof(uint32_t)); + prep_intr_reg = (vaddr_t)mapiodev(ivr, sizeof(uint32_t), false); prep_intr_reg_off = 0; /* hack */ if (!prep_intr_reg) panic("startup: no room for interrupt register"); @@ -125,7 +125,7 @@ (aadr.phys_hi & OFW_PCI_PHYS_HI_SPACEMASK) && (aadr.size_lo + aadr.phys_lo <= (rp->size_lo+rp->host))) { baseaddr = (unsigned char *)mapiodev( - rp->host | aadr.phys_lo, aadr.size_lo); + rp->host | aadr.phys_lo, aadr.size_lo, false); aprint_normal("Found openpic at %08x\n", rp->host | aadr.phys_lo); setup_openpic(baseaddr, 0); @@ -153,7 +153,7 @@ return FALSE; if (len == sizeof(int)*2) { - baseaddr = (unsigned char *)mapiodev(reg[0], reg[1]); + baseaddr = (unsigned char *)mapiodev(reg[0], reg[1], false); aprint_verbose("Found openpic at %08x\n", reg[0]); #ifdef PIC_OPENPIC (void)setup_openpic(baseaddr, 0); @@ -180,12 +180,12 @@ if (i > OPENPIC_MAX_ISUS) aprint_error("Increase OPENPIC_MAX_ISUS to %d\n", i); - baseaddr = (unsigned char *)mapiodev(reg[0], 0x40000); + baseaddr = (unsigned char *)mapiodev(reg[0], 0x40000, false); aprint_verbose("Found openpic at %08x\n", reg[0]); for (j=0; j < i; j++) { isu[j] = (unsigned char *)mapiodev(reg[(j+1)*2], - reg[(j+1)*2+1]); + reg[(j+1)*2+1], false); isumap[j] = reg[(j+1)*2+1]; } (void)setup_distributed_openpic(baseaddr, i, (void **)isu, isumap); Index: src/sys/arch/powerpc/booke/booke_machdep.c diff -u src/sys/arch/powerpc/booke/booke_machdep.c:1.13 src/sys/arch/powerpc/booke/booke_machdep.c:1.14 --- src/sys/arch/powerpc/booke/booke_machdep.c:1.13 Wed Jun 29 21:53:10 2011 +++ src/sys/arch/powerpc/booke/booke_machdep.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: booke_machdep.c,v 1.13 2011/06/29 21:53:10 dholland Exp $ */ +/* $NetBSD: booke_machdep.c,v 1.14 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -38,7 +38,7 @@ #define _POWERPC_BUS_DMA_PRIVATE #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: booke_machdep.c,v 1.13 2011/06/29 21:53:10 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: booke_machdep.c,v 1.14 2011/06/30 00:52:58 matt Exp $"); #include "opt_modular.h" @@ -313,7 +313,7 @@ * mapping if one is found. */ void * -mapiodev(paddr_t pa, psize_t len) +mapiodev(paddr_t pa, psize_t len, bool prefetchable) { const vsize_t off = pa & PAGE_MASK; @@ -321,7 +321,7 @@ * See if we have reserved TLB entry for the pa. This needs to be * true for console as we can't use uvm during early bootstrap. */ - void * const p = tlb_mapiodev(pa, len); + void * const p = tlb_mapiodev(pa, len, prefetchable); if (p != NULL) return p; @@ -340,7 +340,7 @@ va -= PAGE_SIZE; pa -= PAGE_SIZE; pmap_kenter_pa(va, pa, VM_PROT_READ|VM_PROT_WRITE, - PMAP_NOCACHE); + prefetchable ? 0 : PMAP_NOCACHE); } pmap_update(pmap_kernel()); return (void *)(va + off); Index: src/sys/arch/powerpc/booke/booke_stubs.c diff -u src/sys/arch/powerpc/booke/booke_stubs.c:1.8 src/sys/arch/powerpc/booke/booke_stubs.c:1.9 --- src/sys/arch/powerpc/booke/booke_stubs.c:1.8 Wed Jun 29 21:53:11 2011 +++ src/sys/arch/powerpc/booke/booke_stubs.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: booke_stubs.c,v 1.8 2011/06/29 21:53:11 dholland Exp $ */ +/* $NetBSD: booke_stubs.c,v 1.9 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -36,7 +36,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: booke_stubs.c,v 1.8 2011/06/29 21:53:11 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: booke_stubs.c,v 1.9 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> #include <sys/cpu.h> @@ -143,12 +143,12 @@ (*cpu_md_ops.md_tlb_ops->md_tlb_walk)(ctx, func); } -void *tlb_mapiodev(paddr_t, psize_t) __stub; +void *tlb_mapiodev(paddr_t, psize_t, bool) __stub; void * -tlb_mapiodev(paddr_t pa, psize_t len) +tlb_mapiodev(paddr_t pa, psize_t len, bool prefetchable) { - return (*cpu_md_ops.md_tlb_io_ops->md_tlb_mapiodev)(pa, len); + return (*cpu_md_ops.md_tlb_io_ops->md_tlb_mapiodev)(pa, len, prefetchable); } void tlb_unmapiodev(vaddr_t, vsize_t) __stub; Index: src/sys/arch/powerpc/booke/e500_tlb.c diff -u src/sys/arch/powerpc/booke/e500_tlb.c:1.6 src/sys/arch/powerpc/booke/e500_tlb.c:1.7 --- src/sys/arch/powerpc/booke/e500_tlb.c:1.6 Wed Jun 29 23:15:55 2011 +++ src/sys/arch/powerpc/booke/e500_tlb.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: e500_tlb.c,v 1.6 2011/06/29 23:15:55 matt Exp $ */ +/* $NetBSD: e500_tlb.c,v 1.7 2011/06/30 00:52:58 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -36,7 +36,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: e500_tlb.c,v 1.6 2011/06/29 23:15:55 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: e500_tlb.c,v 1.7 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> @@ -683,7 +683,7 @@ } static void * -e500_tlb_mapiodev(paddr_t pa, psize_t len) +e500_tlb_mapiodev(paddr_t pa, psize_t len, bool prefetchable) { struct e500_xtlb * const xtlb = e500_tlb_lookup_xtlb(pa, NULL); @@ -694,8 +694,8 @@ */ if (xtlb && pa + len <= xtlb->e_tlb.tlb_va + xtlb->e_tlb.tlb_size - && ((xtlb->e_tlb.tlb_pte & PTE_W) == 0 - || (xtlb->e_tlb.tlb_pte & PTE_I) == PTE_I)) { + && (prefetchable + || (xtlb->e_tlb.tlb_pte & PTE_WIG) == (PTE_I|PTE_G))) { xtlb->e_refcnt++; return (void *) pa; } Index: src/sys/arch/powerpc/ibm4xx/pmap.c diff -u src/sys/arch/powerpc/ibm4xx/pmap.c:1.69 src/sys/arch/powerpc/ibm4xx/pmap.c:1.70 --- src/sys/arch/powerpc/ibm4xx/pmap.c:1.69 Tue Jun 21 04:21:44 2011 +++ src/sys/arch/powerpc/ibm4xx/pmap.c Thu Jun 30 00:52:58 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.69 2011/06/21 04:21:44 matt Exp $ */ +/* $NetBSD: pmap.c,v 1.70 2011/06/30 00:52:58 matt Exp $ */ /* * Copyright 2001 Wasabi Systems, Inc. @@ -67,7 +67,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.69 2011/06/21 04:21:44 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.70 2011/06/30 00:52:58 matt Exp $"); #include <sys/param.h> #include <sys/cpu.h> @@ -820,11 +820,11 @@ /* XXXX -- need to support multiple page sizes. */ tte |= TTE_SZ_16K; #ifdef DIAGNOSTIC - if ((flags & (PME_NOCACHE | PME_WRITETHROUG)) == - (PME_NOCACHE | PME_WRITETHROUG)) + if ((flags & (PMAP_NOCACHE | PME_WRITETHROUG)) == + (PMAP_NOCACHE | PME_WRITETHROUG)) panic("pmap_enter: uncached & writethrough"); #endif - if (flags & PME_NOCACHE) + if (flags & PMAP_NOCACHE) /* Must be I/O mapping */ tte |= TTE_I | TTE_G; #ifdef PPC_4XX_NOCACHE @@ -941,11 +941,11 @@ /* XXXX -- need to support multiple page sizes. */ tte |= TTE_SZ_16K; #ifdef DIAGNOSTIC - if ((prot & (PME_NOCACHE | PME_WRITETHROUG)) == - (PME_NOCACHE | PME_WRITETHROUG)) + if ((flags & (PMAP_NOCACHE | PME_WRITETHROUG)) == + (PMAP_NOCACHE | PME_WRITETHROUG)) panic("pmap_kenter_pa: uncached & writethrough"); #endif - if (prot & PME_NOCACHE) + if (flags & PMAP_NOCACHE) /* Must be I/O mapping */ tte |= TTE_I | TTE_G; #ifdef PPC_4XX_NOCACHE Index: src/sys/arch/powerpc/include/cpu.h diff -u src/sys/arch/powerpc/include/cpu.h:1.87 src/sys/arch/powerpc/include/cpu.h:1.88 --- src/sys/arch/powerpc/include/cpu.h:1.87 Wed Jun 29 06:00:17 2011 +++ src/sys/arch/powerpc/include/cpu.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.h,v 1.87 2011/06/29 06:00:17 matt Exp $ */ +/* $NetBSD: cpu.h,v 1.88 2011/06/30 00:52:59 matt Exp $ */ /* * Copyright (C) 1999 Wolfgang Solfrank. @@ -352,7 +352,7 @@ void dcache_inv(vaddr_t, vsize_t); void icache_inv(vaddr_t, vsize_t); -void * mapiodev(paddr_t, psize_t); +void * mapiodev(paddr_t, psize_t, bool); void unmapiodev(vaddr_t, vsize_t); #ifdef MULTIPROCESSOR Index: src/sys/arch/powerpc/include/booke/cpuvar.h diff -u src/sys/arch/powerpc/include/booke/cpuvar.h:1.11 src/sys/arch/powerpc/include/booke/cpuvar.h:1.12 --- src/sys/arch/powerpc/include/booke/cpuvar.h:1.11 Wed Jun 29 06:00:56 2011 +++ src/sys/arch/powerpc/include/booke/cpuvar.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: cpuvar.h,v 1.11 2011/06/29 06:00:56 matt Exp $ */ +/* $NetBSD: cpuvar.h,v 1.12 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -115,7 +115,7 @@ * early boot by doing cpu_md_ops.tlb_md_ops = (const struct * tlb_md_ops *) &<variable containing mapiodev pointer>. */ - void *(*md_tlb_mapiodev)(paddr_t, psize_t); + void *(*md_tlb_mapiodev)(paddr_t, psize_t, bool); void (*md_tlb_unmapiodev)(vaddr_t, vsize_t); int (*md_tlb_ioreserve)(vaddr_t, vsize_t, uint32_t); int (*md_tlb_iorelease)(vaddr_t); @@ -175,7 +175,7 @@ struct intrsw; void exception_init(const struct intrsw *); -void *tlb_mapiodev(paddr_t, psize_t); +void *tlb_mapiodev(paddr_t, psize_t, bool); void tlb_unmapiodev(vaddr_t, vsize_t); int tlb_ioreserve(vaddr_t, vsize_t, pt_entry_t); int tlb_iorelease(vaddr_t); Index: src/sys/arch/powerpc/include/booke/pmap.h diff -u src/sys/arch/powerpc/include/booke/pmap.h:1.7 src/sys/arch/powerpc/include/booke/pmap.h:1.8 --- src/sys/arch/powerpc/include/booke/pmap.h:1.7 Thu Jun 23 02:33:44 2011 +++ src/sys/arch/powerpc/include/booke/pmap.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.h,v 1.7 2011/06/23 02:33:44 matt Exp $ */ +/* $NetBSD: pmap.h,v 1.8 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -52,7 +52,6 @@ #include <powerpc/cpuset.h> #endif -#define PMAP_MD_NOCACHE 0x01000000 #define PMAP_NEED_PROCWR #include <common/pmap/tlb/vmpagemd.h> Index: src/sys/arch/powerpc/include/booke/pte.h diff -u src/sys/arch/powerpc/include/booke/pte.h:1.5 src/sys/arch/powerpc/include/booke/pte.h:1.6 --- src/sys/arch/powerpc/include/booke/pte.h:1.5 Thu Jun 23 20:46:15 2011 +++ src/sys/arch/powerpc/include/booke/pte.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pte.h,v 1.5 2011/06/23 20:46:15 matt Exp $ */ +/* $NetBSD: pte.h,v 1.6 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -126,15 +126,9 @@ } static inline pt_entry_t -pte_iouncached_bits(void) -{ - return PTE_W|PTE_I|PTE_G; -} - -static inline pt_entry_t pte_ionocached_bits(void) { - return PTE_WIG; + return PTE_I|PTE_G; } static inline pt_entry_t @@ -218,7 +212,7 @@ static inline pt_entry_t pte_flag_bits(struct vm_page_md *mdpg, int flags) { - if (__predict_false(flags & PMAP_MD_NOCACHE)) { + if (__predict_false(flags & PMAP_NOCACHE)) { if (__predict_true(mdpg != NULL)) { return pte_nocached_bits(); } else { Index: src/sys/arch/powerpc/include/ibm4xx/pmap.h diff -u src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.16 src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.17 --- src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.16 Mon Jun 20 20:24:28 2011 +++ src/sys/arch/powerpc/include/ibm4xx/pmap.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.h,v 1.16 2011/06/20 20:24:28 matt Exp $ */ +/* $NetBSD: pmap.h,v 1.17 2011/06/30 00:52:59 matt Exp $ */ /* * Copyright 2001 Wasabi Systems, Inc. @@ -138,7 +138,6 @@ */ #define PME_NOCACHE 0x1000000 #define PME_WRITETHROUG 0x2000000 -#define PMAP_MD_NOCACHE PME_NOCACHE /* XXX: OEA pmap compat. for bus_dma */ /* * Pmap stuff Index: src/sys/arch/powerpc/include/oea/pmap.h diff -u src/sys/arch/powerpc/include/oea/pmap.h:1.24 src/sys/arch/powerpc/include/oea/pmap.h:1.25 --- src/sys/arch/powerpc/include/oea/pmap.h:1.24 Mon Jun 20 20:24:29 2011 +++ src/sys/arch/powerpc/include/oea/pmap.h Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.h,v 1.24 2011/06/20 20:24:29 matt Exp $ */ +/* $NetBSD: pmap.h,v 1.25 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -218,7 +218,6 @@ int pmap_setup_segment0_map(int use_large_pages, ...); #endif -#define PMAP_MD_NOCACHE 0x1000000 #define PMAP_MD_PREFETCHABLE 0x2000000 #define PMAP_STEAL_MEMORY #define PMAP_NEED_PROCWR Index: src/sys/arch/powerpc/oea/oea_machdep.c diff -u src/sys/arch/powerpc/oea/oea_machdep.c:1.58 src/sys/arch/powerpc/oea/oea_machdep.c:1.59 --- src/sys/arch/powerpc/oea/oea_machdep.c:1.58 Mon Jun 20 07:18:07 2011 +++ src/sys/arch/powerpc/oea/oea_machdep.c Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: oea_machdep.c,v 1.58 2011/06/20 07:18:07 matt Exp $ */ +/* $NetBSD: oea_machdep.c,v 1.59 2011/06/30 00:52:59 matt Exp $ */ /* * Copyright (C) 2002 Matt Thomas @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: oea_machdep.c,v 1.58 2011/06/20 07:18:07 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: oea_machdep.c,v 1.59 2011/06/30 00:52:59 matt Exp $"); #include "opt_ppcarch.h" #include "opt_compat_netbsd.h" @@ -835,7 +835,7 @@ * Allocate vm space and mapin the I/O address */ void * -mapiodev(paddr_t pa, psize_t len) +mapiodev(paddr_t pa, psize_t len, bool prefetchable) { paddr_t faddr; vaddr_t taddr, va; @@ -850,7 +850,8 @@ return NULL; for (; len > 0; len -= PAGE_SIZE) { - pmap_kenter_pa(taddr, faddr, VM_PROT_READ | VM_PROT_WRITE, 0); + pmap_kenter_pa(taddr, faddr, VM_PROT_READ | VM_PROT_WRITE, + (prefetchable ? PMAP_MD_PREFETCHABLE : PMAP_NOCACHE)); faddr += PAGE_SIZE; taddr += PAGE_SIZE; } Index: src/sys/arch/powerpc/oea/pmap.c diff -u src/sys/arch/powerpc/oea/pmap.c:1.80 src/sys/arch/powerpc/oea/pmap.c:1.81 --- src/sys/arch/powerpc/oea/pmap.c:1.80 Sun Jun 19 07:59:47 2011 +++ src/sys/arch/powerpc/oea/pmap.c Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.80 2011/06/19 07:59:47 matt Exp $ */ +/* $NetBSD: pmap.c,v 1.81 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. * All rights reserved. @@ -63,7 +63,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.80 2011/06/19 07:59:47 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.81 2011/06/30 00:52:59 matt Exp $"); #define PMAP_NOOPNAMES @@ -1931,7 +1931,7 @@ } else pte_lo = PTE_G; - if ((flags & PMAP_MD_NOCACHE) == 0) { + if ((flags & PMAP_NOCACHE) == 0) { for (mp = mem; mp->size; mp++) { if (pa >= mp->start && pa < mp->start + mp->size) { pte_lo = PTE_M; @@ -2024,7 +2024,7 @@ * asssume it's in memory coherent memory. */ pte_lo = PTE_IG; - if ((flags & PMAP_MD_NOCACHE) == 0) { + if ((flags & PMAP_NOCACHE) == 0) { for (mp = mem; mp->size; mp++) { if (pa >= mp->start && pa < mp->start + mp->size) { pte_lo = PTE_M; Index: src/sys/arch/powerpc/oea/pmap_kernel.c diff -u src/sys/arch/powerpc/oea/pmap_kernel.c:1.8 src/sys/arch/powerpc/oea/pmap_kernel.c:1.9 --- src/sys/arch/powerpc/oea/pmap_kernel.c:1.8 Mon Jun 20 08:07:03 2011 +++ src/sys/arch/powerpc/oea/pmap_kernel.c Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap_kernel.c,v 1.8 2011/06/20 08:07:03 matt Exp $ */ +/* $NetBSD: pmap_kernel.c,v 1.9 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -30,7 +30,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: pmap_kernel.c,v 1.8 2011/06/20 08:07:03 matt Exp $"); +__KERNEL_RCSID(1, "$NetBSD: pmap_kernel.c,v 1.9 2011/06/30 00:52:59 matt Exp $"); #include "opt_ddb.h" #include "opt_pmap.h" @@ -44,12 +44,12 @@ u_int powerpc_mmap_flags(paddr_t pa) { - u_int flags = PMAP_MD_NOCACHE; + u_int flags = PMAP_NOCACHE; if (pa & POWERPC_MMAP_FLAG_PREFETCHABLE) flags |= PMAP_MD_PREFETCHABLE; if (pa & POWERPC_MMAP_FLAG_CACHEABLE) - flags &= ~PMAP_MD_NOCACHE; + flags &= ~PMAP_NOCACHE; return flags; } Index: src/sys/arch/powerpc/pci/pchb.c diff -u src/sys/arch/powerpc/pci/pchb.c:1.6 src/sys/arch/powerpc/pci/pchb.c:1.7 --- src/sys/arch/powerpc/pci/pchb.c:1.6 Fri Jun 17 19:03:00 2011 +++ src/sys/arch/powerpc/pci/pchb.c Thu Jun 30 00:52:59 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pchb.c,v 1.6 2011/06/17 19:03:00 matt Exp $ */ +/* $NetBSD: pchb.c,v 1.7 2011/06/30 00:52:59 matt Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pchb.c,v 1.6 2011/06/17 19:03:00 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pchb.c,v 1.7 2011/06/30 00:52:59 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -260,7 +260,7 @@ ibm82660_print(pa, self); break; case PCI_PRODUCT_IBM_PYTHON: - python = mapiodev(0xfeff6000, 0x60); + python = mapiodev(0xfeff6000, 0x60, false); v = 0x88b78e01; /* taken from linux */ out32rb(python+0x30, v); v = in32rb(python+0x30); Index: src/sys/arch/powerpc/powerpc/bus_dma.c diff -u src/sys/arch/powerpc/powerpc/bus_dma.c:1.41 src/sys/arch/powerpc/powerpc/bus_dma.c:1.42 --- src/sys/arch/powerpc/powerpc/bus_dma.c:1.41 Sat Jun 18 06:41:44 2011 +++ src/sys/arch/powerpc/powerpc/bus_dma.c Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: bus_dma.c,v 1.41 2011/06/18 06:41:44 matt Exp $ */ +/* $NetBSD: bus_dma.c,v 1.42 2011/06/30 00:53:00 matt Exp $ */ /*- * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ #define _POWERPC_BUS_DMA_PRIVATE #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.41 2011/06/18 06:41:44 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.42 2011/06/30 00:53:00 matt Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -637,7 +637,7 @@ pmap_kenter_pa(va, addr, VM_PROT_READ | VM_PROT_WRITE, PMAP_WIRED | - ((flags & BUS_DMA_NOCACHE) ? PMAP_MD_NOCACHE : 0)); + ((flags & BUS_DMA_NOCACHE) ? PMAP_NOCACHE : 0)); } } Index: src/sys/arch/powerpc/powerpc/bus_space.c diff -u src/sys/arch/powerpc/powerpc/bus_space.c:1.27 src/sys/arch/powerpc/powerpc/bus_space.c:1.28 --- src/sys/arch/powerpc/powerpc/bus_space.c:1.27 Mon Jun 20 05:39:43 2011 +++ src/sys/arch/powerpc/powerpc/bus_space.c Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: bus_space.c,v 1.27 2011/06/20 05:39:43 matt Exp $ */ +/* $NetBSD: bus_space.c,v 1.28 2011/06/30 00:53:00 matt Exp $ */ /*- * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bus_space.c,v 1.27 2011/06/20 05:39:43 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bus_space.c,v 1.28 2011/06/30 00:53:00 matt Exp $"); #define _POWERPC_BUS_SPACE_PRIVATE @@ -614,7 +614,8 @@ /* * Map this into the kernel pmap. */ - *bshp = (bus_space_handle_t) mapiodev(pa, size); + *bshp = (bus_space_handle_t) mapiodev(pa, size, + (flags & BUS_SPACE_MAP_PREFETCHABLE) != 0); if (*bshp == 0) { extent_free(t->pbs_extent, bpa, size, EX_NOWAIT | extent_flags); #ifdef DEBUG @@ -747,7 +748,7 @@ } } #endif /* defined (PPC_OEA) || defined(PPC_OEA601) */ - *bshp = (bus_space_handle_t) mapiodev(pa, size); + *bshp = (bus_space_handle_t) mapiodev(pa, size, false); if (*bshp == 0) { extent_free(t->pbs_extent, bpa, size, EX_NOWAIT | extent_flags); return (ENOMEM); Index: src/sys/arch/prep/include/autoconf.h diff -u src/sys/arch/prep/include/autoconf.h:1.8 src/sys/arch/prep/include/autoconf.h:1.9 --- src/sys/arch/prep/include/autoconf.h:1.8 Wed Oct 17 19:56:49 2007 +++ src/sys/arch/prep/include/autoconf.h Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.8 2007/10/17 19:56:49 garbled Exp $ */ +/* $NetBSD: autoconf.h,v 1.9 2011/06/30 00:53:00 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -43,5 +43,4 @@ /* bus_space_tag_t ca_tag; */ }; -extern void *mapiodev(paddr_t, psize_t); extern paddr_t kvtop(void *); Index: src/sys/arch/prep/pci/pci_machdep.c diff -u src/sys/arch/prep/pci/pci_machdep.c:1.35 src/sys/arch/prep/pci/pci_machdep.c:1.36 --- src/sys/arch/prep/pci/pci_machdep.c:1.35 Wed Jun 22 18:06:35 2011 +++ src/sys/arch/prep/pci/pci_machdep.c Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pci_machdep.c,v 1.35 2011/06/22 18:06:35 matt Exp $ */ +/* $NetBSD: pci_machdep.c,v 1.36 2011/06/30 00:53:00 matt Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -39,7 +39,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.35 2011/06/22 18:06:35 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.36 2011/06/30 00:53:00 matt Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -96,8 +96,8 @@ pc->pc_decompose_tag = genppc_pci_indirect_decompose_tag; pc->pc_conf_hook = prep_pci_conf_hook; - pc->pc_addr = mapiodev(prep_pci_baseaddr, 4); - pc->pc_data = mapiodev(prep_pci_basedata, 4); + pc->pc_addr = mapiodev(prep_pci_baseaddr, 4, false); + pc->pc_data = mapiodev(prep_pci_basedata, 4, false); pc->pc_bus = 0; pc->pc_node = 0; pc->pc_memt = 0; Index: src/sys/arch/prep/prep/machdep.c diff -u src/sys/arch/prep/prep/machdep.c:1.72 src/sys/arch/prep/prep/machdep.c:1.73 --- src/sys/arch/prep/prep/machdep.c:1.72 Mon Jun 20 07:18:07 2011 +++ src/sys/arch/prep/prep/machdep.c Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.72 2011/06/20 07:18:07 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.73 2011/06/30 00:53:00 matt Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.72 2011/06/20 07:18:07 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.73 2011/06/30 00:53:00 matt Exp $"); #include "opt_compat_netbsd.h" #include "opt_openpic.h" @@ -342,11 +342,11 @@ if (pa->PPCData[0] == 1) baseaddr = (unsigned char *)mapiodev( le64dec(&pa->PPCData[4]) | PREP_BUS_SPACE_IO, - le64dec(&pa->PPCData[12])); + le64dec(&pa->PPCData[12]), false); else if (pa->PPCData[0] == 2) baseaddr = (unsigned char *)mapiodev( le64dec(&pa->PPCData[4]) | PREP_BUS_SPACE_MEM, - le64dec(&pa->PPCData[12])); + le64dec(&pa->PPCData[12]), false); if (baseaddr == NULL) return 0; pic_init(); @@ -407,7 +407,7 @@ /* otherwise we have a memory packet */ addr = le64dec(&pa->PPCData[4]) & ~(PAGE_SIZE-1); prep_intr_reg_off = le64dec(&pa->PPCData[4]) & (PAGE_SIZE-1); - prep_intr_reg = (vaddr_t)mapiodev(addr, PAGE_SIZE); + prep_intr_reg = (vaddr_t)mapiodev(addr, PAGE_SIZE, false); if (!prep_intr_reg) panic("startup: no room for interrupt register"); return; @@ -450,7 +450,7 @@ * occur on certain motorola VME boards. Instead we need * to just hardcode it. */ - prep_intr_reg = (vaddr_t) mapiodev(PREP_INTR_REG, PAGE_SIZE); + prep_intr_reg = (vaddr_t) mapiodev(PREP_INTR_REG, PAGE_SIZE, false); if (!prep_intr_reg) panic("startup: no room for interrupt register"); prep_intr_reg_off = INTR_VECTOR_REG; Index: src/sys/arch/rs6000/include/autoconf.h diff -u src/sys/arch/rs6000/include/autoconf.h:1.1 src/sys/arch/rs6000/include/autoconf.h:1.2 --- src/sys/arch/rs6000/include/autoconf.h:1.1 Mon Dec 17 19:09:08 2007 +++ src/sys/arch/rs6000/include/autoconf.h Thu Jun 30 00:53:00 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.h,v 1.1 2007/12/17 19:09:08 garbled Exp $ */ +/* $NetBSD: autoconf.h,v 1.2 2011/06/30 00:53:00 matt Exp $ */ /*- * Copyright (C) 1998 Internet Research Institute, Inc. @@ -44,8 +44,7 @@ }; #ifdef _KERNEL -extern void *mapiodev(paddr_t, psize_t); -extern paddr_t kvtop(void *); +paddr_t kvtop(void *); void inittodr(time_t); void resettodr(void);