diff options
author | tmm <tmm@FreeBSD.org> | 2004-03-23 23:41:39 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2004-03-23 23:41:39 +0000 |
commit | 96972b1e951e644259475e6581d4e08911093716 (patch) | |
tree | 9864deb55074bf2501d24f8b1e421d6d612c9fc1 | |
parent | 6ef21c4a07dac11502964fa4d78a1a8e4ebf8f57 (diff) | |
download | FreeBSD-src-96972b1e951e644259475e6581d4e08911093716.zip FreeBSD-src-96972b1e951e644259475e6581d4e08911093716.tar.gz |
Correct the boundary parameter to the bus_dma_tag_create() calls (it was
(1 << 24) - 2 instead of 1 << 24, which it was obviously intended to
be). This fixes SBus isp(4)s on sparc64 machines.
Report and testing: Marius Strobl <marius@alchemy.franken.de>
-rw-r--r-- | sys/dev/isp/isp_sbus.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/isp/isp_sbus.c b/sys/dev/isp/isp_sbus.c index ad88a95..84eb802 100644 --- a/sys/dev/isp/isp_sbus.c +++ b/sys/dev/isp/isp_sbus.c @@ -489,7 +489,7 @@ isp_sbus_mbxdma(struct ispsoftc *isp) ISP_UNLOCK(isp); - if (bus_dma_tag_create(NULL, 1, BUS_SPACE_MAXADDR_24BIT-1, + if (bus_dma_tag_create(NULL, 1, BUS_SPACE_MAXADDR_24BIT+1, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR_32BIT, NULL, NULL, BUS_SPACE_MAXSIZE_32BIT, ISP_NSEGS, BUS_SPACE_MAXADDR_24BIT, 0, busdma_lock_mutex, &Giant, @@ -522,7 +522,7 @@ isp_sbus_mbxdma(struct ispsoftc *isp) len += ISP_QUEUE_SIZE(RESULT_QUEUE_LEN(isp)); ns = (len / PAGE_SIZE) + 1; - if (bus_dma_tag_create(sbs->dmat, QENTRY_LEN, BUS_SPACE_MAXADDR_24BIT-1, + if (bus_dma_tag_create(sbs->dmat, QENTRY_LEN, BUS_SPACE_MAXADDR_24BIT+1, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR_32BIT, NULL, NULL, len, ns, BUS_SPACE_MAXADDR_24BIT, 0, busdma_lock_mutex, &Giant, &isp->isp_cdmat)) { |