summaryrefslogtreecommitdiffstats
path: root/sys/dev/isp/isp_pci.c
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2006-02-04 08:39:02 +0000
committermjacob <mjacob@FreeBSD.org>2006-02-04 08:39:02 +0000
commitcf93cd9ef8504e4355b07bc18bd285dd035f1edd (patch)
tree235954b102413cdf926094f727cf4c71fbd0ab04 /sys/dev/isp/isp_pci.c
parent9f216f68227ee1018bb1532b8ead15db564f9b0b (diff)
downloadFreeBSD-src-cf93cd9ef8504e4355b07bc18bd285dd035f1edd.zip
FreeBSD-src-cf93cd9ef8504e4355b07bc18bd285dd035f1edd.tar.gz
Actually, no, I had it wrong in 1.109. The arguments to bus_dma_create_tag
are bus_addr_t, not bus_size_t. In any case, turn off DAC support entirely until it is revamped to actually work *correctly* for 64 bit platforms (not using a PAE definition and for both initiator and target mode).
Diffstat (limited to 'sys/dev/isp/isp_pci.c')
-rw-r--r--sys/dev/isp/isp_pci.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/sys/dev/isp/isp_pci.c b/sys/dev/isp/isp_pci.c
index c31e804..1ac1830 100644
--- a/sys/dev/isp/isp_pci.c
+++ b/sys/dev/isp/isp_pci.c
@@ -46,12 +46,6 @@ __FBSDID("$FreeBSD$");
#include <sys/rman.h>
#include <sys/malloc.h>
-#ifdef ISP_TARGET_MODE
-#ifdef PAE
-#error "PAE and ISP_TARGET_MODE not supported yet"
-#endif
-#endif
-
#include <dev/isp/isp_freebsd.h>
static u_int16_t isp_pci_rd_reg(struct ispsoftc *, int);
@@ -1129,11 +1123,8 @@ isp_pci_mbxdma(struct ispsoftc *isp)
u_int32_t len;
int i, error, ns;
bus_size_t slim; /* segment size */
-
- /* XXX Should be bus_size_t, but i386/PAE is broken */
bus_addr_t llim; /* low limit of unavailable dma */
- bus_addr_t hlim; /* low limit of unavailable dma */
-
+ bus_addr_t hlim; /* high limit of unavailable dma */
struct imush im;
/*
@@ -1684,7 +1675,7 @@ tdma_mkfc(void *arg, bus_dma_segment_t *dm_segs, int nseg, int error)
static void dma2(void *, bus_dma_segment_t *, int, int);
-#ifdef PAE
+#if defined(ISP_DAC_SUPPORTED) && (ISP_64BIT_CORRECTLY_DONE)
#define LOWD(x) ((uint32_t) x)
#define HIWD(x) ((uint32_t) (x >> 32))
OpenPOWER on IntegriCloud