summaryrefslogtreecommitdiffstats
path: root/sys/dev/isp/isp_pci.c
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2007-06-11 17:56:17 +0000
committermjacob <mjacob@FreeBSD.org>2007-06-11 17:56:17 +0000
commit81c02b19a4d06cefe0267b411492630c6d1a15ca (patch)
tree54604fce3b10468c609d879006fea8ce44699da6 /sys/dev/isp/isp_pci.c
parente42a97f12ae3857e3ba3996cdea7f492056368c1 (diff)
downloadFreeBSD-src-81c02b19a4d06cefe0267b411492630c6d1a15ca.zip
FreeBSD-src-81c02b19a4d06cefe0267b411492630c6d1a15ca.tar.gz
Only try and set a segment lim size to 1 << 32 iff bus_size_t > 4.
Diffstat (limited to 'sys/dev/isp/isp_pci.c')
-rw-r--r--sys/dev/isp/isp_pci.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/isp/isp_pci.c b/sys/dev/isp/isp_pci.c
index 63838c6..0d862fc 100644
--- a/sys/dev/isp/isp_pci.c
+++ b/sys/dev/isp/isp_pci.c
@@ -1712,11 +1712,15 @@ isp_pci_mbxdma(ispsoftc_t *isp)
hlim = BUS_SPACE_MAXADDR;
if (IS_ULTRA2(isp) || IS_FC(isp) || IS_1240(isp)) {
- slim = (bus_size_t) (1ULL << 32);
+ if (sizeof (bus_size_t) > 4) {
+ slim = (bus_size_t) (1ULL << 32);
+ } else {
+ slim = (bus_size_t) (1UL << 31);
+ }
llim = BUS_SPACE_MAXADDR;
} else {
llim = BUS_SPACE_MAXADDR_32BIT;
- slim = (1 << 24);
+ slim = (1UL << 24);
}
len = isp->isp_maxcmds * sizeof (struct isp_pcmd);
OpenPOWER on IntegriCloud