summaryrefslogtreecommitdiffstats
path: root/sys/dev/nand/nfc_rb.c
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2015-06-09 19:14:27 +0000
committerdim <dim@FreeBSD.org>2015-06-09 19:14:27 +0000
commit6370dd4a2cfcd7b1e323f780f34523097a892d0c (patch)
tree16a54540a7fb71a7c91fd866ad2437410acbf587 /sys/dev/nand/nfc_rb.c
parent8c2b6d93700b452fac3cadba57de1b18a783ec92 (diff)
parent8fbb8a1dd51626b81ee23212d3001e3908ff17c4 (diff)
downloadFreeBSD-src-6370dd4a2cfcd7b1e323f780f34523097a892d0c.zip
FreeBSD-src-6370dd4a2cfcd7b1e323f780f34523097a892d0c.tar.gz
Merged ^/head r283871 through r284187.
Diffstat (limited to 'sys/dev/nand/nfc_rb.c')
-rw-r--r--sys/dev/nand/nfc_rb.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/dev/nand/nfc_rb.c b/sys/dev/nand/nfc_rb.c
index 64f888a..20a4026 100644
--- a/sys/dev/nand/nfc_rb.c
+++ b/sys/dev/nand/nfc_rb.c
@@ -49,6 +49,9 @@ __FBSDID("$FreeBSD$");
#include <dev/nand/nand.h>
#include <dev/nand/nandbus.h>
+
+#include <powerpc/mpc85xx/mpc85xx.h>
+
#include "nfc_if.h"
#include "gpio_if.h"
@@ -128,6 +131,7 @@ rb_nand_attach(device_t dev)
struct rb_nand_softc *sc;
phandle_t node;
uint32_t ale[2],cle[2],nce[2],rdy[2];
+ u_long size,start;
int err;
sc = device_get_softc(dev);
@@ -168,6 +172,14 @@ rb_nand_attach(device_t dev)
return (ENXIO);
}
+ start = rman_get_start(sc->sc_mem);
+ size = rman_get_size(sc->sc_mem);
+ if (law_enable(OCP85XX_TGTIF_LBC, start, size) != 0) {
+ bus_release_resource(dev, SYS_RES_MEMORY, sc->rid, sc->sc_mem);
+ device_printf(dev, "could not allocate local address window.\n");
+ return (ENXIO);
+ }
+
nand_init(&sc->nand_dev, dev, NAND_ECC_SOFT, 0, 0, NULL, NULL);
err = nandbus_create(dev);
OpenPOWER on IntegriCloud