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).
This commit is contained in:
mjacob 2006-02-04 08:39:02 +00:00
parent 9f216f6822
commit cf93cd9ef8
2 changed files with 4 additions and 14 deletions

View File

@ -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.

View File

@ -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))