Module Name:    src
Committed By:   matt
Date:           Thu Sep 27 00:25:26 UTC 2012

Modified Files:
        src/sys/arch/arm/broadcom: bcm53xx_pax.c

Log Message:
Don't initialize PCIe inbound windows.  This avoids the 256MB limitation
on DMAs.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/arm/broadcom/bcm53xx_pax.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/broadcom/bcm53xx_pax.c
diff -u src/sys/arch/arm/broadcom/bcm53xx_pax.c:1.4 src/sys/arch/arm/broadcom/bcm53xx_pax.c:1.5
--- src/sys/arch/arm/broadcom/bcm53xx_pax.c:1.4	Sat Sep 22 01:47:46 2012
+++ src/sys/arch/arm/broadcom/bcm53xx_pax.c	Thu Sep 27 00:25:26 2012
@@ -34,7 +34,7 @@
 
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(1, "$NetBSD: bcm53xx_pax.c,v 1.4 2012/09/22 01:47:46 matt Exp $");
+__KERNEL_RCSID(1, "$NetBSD: bcm53xx_pax.c,v 1.5 2012/09/27 00:25:26 matt Exp $");
 
 #include <sys/bus.h>
 #include <sys/device.h>
@@ -146,10 +146,10 @@ bcmpax_ccb_match(device_t parent, cfdata
 static int
 bcmpax_iwin_init(struct bcmpax_softc *sc)
 {
+#if 0
 	uint32_t megs = (physical_end + 0xfffff - physical_start) >> 20;
 	uint32_t iwin_megs = min(256, megs);
 #if 1
-#if 1
 	bus_addr_t iwin1_start = physical_start;
 #else
 	bus_addr_t iwin1_start = 0;
@@ -173,7 +173,6 @@ bcmpax_iwin_init(struct bcmpax_softc *sc
 #endif
 		bcmpax_conf_write(sc, 0, PCI_MAPREG_START+8, iwin2_start);
 	}
-#endif
 
 	if (megs <= iwin_megs) {
 		/*
@@ -184,6 +183,13 @@ bcmpax_iwin_init(struct bcmpax_softc *sc
 
 	return bus_dmatag_subregion(sc->sc_dmat, physical_start,
 	    physical_start + (iwin_megs << 20) - 1, &sc->sc_dmat, 0);
+#else
+	bcmpax_write_4(sc, PCIE_IARR_1_LOWER, 0);
+	bcmpax_write_4(sc, PCIE_FUNC0_IMAP1, 0);
+	bcmpax_write_4(sc, PCIE_IARR_2_LOWER, 0);
+	bcmpax_write_4(sc, PCIE_FUNC0_IMAP2, 0);
+	return 0;
+#endif
 }
 
 static void

Reply via email to