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 <[email protected]>
@@ -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);