diff options
author | grehan <grehan@FreeBSD.org> | 2005-05-29 08:51:21 +0000 |
---|---|---|
committer | grehan <grehan@FreeBSD.org> | 2005-05-29 08:51:21 +0000 |
commit | f17e0f94bb0fcae8583a260f067465d3eda0665c (patch) | |
tree | 9cbe6f01614bc290fbb0057f982d03548d13e8c8 /sys/powerpc/powermac | |
parent | d85e2a245dcc8641613836c5e18ff42c27142b88 (diff) | |
download | FreeBSD-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/powermac')
-rw-r--r-- | sys/powerpc/powermac/uninorth.c | 4 |
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); |