From 51effc8cd5aa6db5a0fdc22a6fc933951390d6a7 Mon Sep 17 00:00:00 2001 From: Matt Jacob Date: Sat, 4 Feb 2006 08:39:02 +0000 Subject: [PATCH] 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). --- sys/dev/isp/isp_freebsd.h | 5 ++--- sys/dev/isp/isp_pci.c | 13 ++----------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/sys/dev/isp/isp_freebsd.h b/sys/dev/isp/isp_freebsd.h index bc9d218de8a..f2b2fd817d3 100644 --- a/sys/dev/isp/isp_freebsd.h +++ b/sys/dev/isp/isp_freebsd.h @@ -61,9 +61,8 @@ #include "opt_ddb.h" #include "opt_isp.h" -#ifdef PAE -#define ISP_DAC_SUPPORTED 1 -#endif +/* disabled until done correctly */ +/* #define ISP_DAC_SUPPORTED 1 */ /* * Efficiency- get rid of SBus code && tests unless we need them. diff --git a/sys/dev/isp/isp_pci.c b/sys/dev/isp/isp_pci.c index c31e8042598..1ac18300dbe 100644 --- a/sys/dev/isp/isp_pci.c +++ b/sys/dev/isp/isp_pci.c @@ -46,12 +46,6 @@ __FBSDID("$FreeBSD$"); #include #include -#ifdef ISP_TARGET_MODE -#ifdef PAE -#error "PAE and ISP_TARGET_MODE not supported yet" -#endif -#endif - #include 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))