summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authorgrehan <grehan@FreeBSD.org>2005-05-29 08:51:21 +0000
committergrehan <grehan@FreeBSD.org>2005-05-29 08:51:21 +0000
commitf17e0f94bb0fcae8583a260f067465d3eda0665c (patch)
tree9cbe6f01614bc290fbb0057f982d03548d13e8c8 /sys/powerpc
parentd85e2a245dcc8641613836c5e18ff42c27142b88 (diff)
downloadFreeBSD-src-f17e0f94bb0fcae8583a260f067465d3eda0665c.zip
FreeBSD-src-f17e0f94bb0fcae8583a260f067465d3eda0665c.tar.gz
The end values passed to rman_manage_region() for PCI i/o and mem
spaces were 1 too large. This resulted in the rman list not being sorted correctly, and USB ports not being discovered on older TiBooks. Detective work by: Andreas Tobler <toa at pop dot agri dot ch>
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/powermac/uninorth.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/powerpc/powermac/uninorth.c b/sys/powerpc/powermac/uninorth.c
index 89a38f7..0464593 100644
--- a/sys/powerpc/powermac/uninorth.c
+++ b/sys/powerpc/powermac/uninorth.c
@@ -205,7 +205,7 @@ uninorth_attach(device_t dev)
sc->sc_iostart = io->host;
if (rman_init(&sc->sc_io_rman) != 0 ||
rman_manage_region(&sc->sc_io_rman, io->pci_lo,
- io->pci_lo + io->size_lo) != 0) {
+ io->pci_lo + io->size_lo - 1) != 0) {
device_printf(dev, "failed to set up io range management\n");
return (ENXIO);
}
@@ -223,7 +223,7 @@ uninorth_attach(device_t dev)
}
for (i = 0; i < nmem; i++) {
if (rman_manage_region(&sc->sc_mem_rman, mem[i]->pci_lo,
- mem[i]->pci_lo + mem[i]->size_lo) != 0) {
+ mem[i]->pci_lo + mem[i]->size_lo - 1) != 0) {
device_printf(dev,
"failed to set up memory range management\n");
return (ENXIO);
OpenPOWER on IntegriCloud