diff options
| author | Marius Strobl <marius@FreeBSD.org> | 2007-01-21 19:32:51 +0000 |
|---|---|---|
| committer | Marius Strobl <marius@FreeBSD.org> | 2007-01-21 19:32:51 +0000 |
| commit | c2175ff5cadf1e22b3054180ba69548b00a4a0de (patch) | |
| tree | 0022c3a9a6df560b7e242e09f139c9d0dd23011b /sys/dev/isp | |
| parent | e54f6746527c81d586dd8fa24590bcb3ef7c290a (diff) | |
Notes
Diffstat (limited to 'sys/dev/isp')
| -rw-r--r-- | sys/dev/isp/isp_sbus.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/sys/dev/isp/isp_sbus.c b/sys/dev/isp/isp_sbus.c index 1b70a958931f..b45d5ea3184f 100644 --- a/sys/dev/isp/isp_sbus.c +++ b/sys/dev/isp/isp_sbus.c @@ -479,6 +479,18 @@ imc(void *arg, bus_dma_segment_t *segs, int nseg, int error) */ #define ISP_NSEGS ((MAXPHYS / PAGE_SIZE) + 1) +#if __FreeBSD_version < 700020 +#define BUS_DMA_ROOTARG NULL +#define isp_dma_tag_create(a, b, c, d, e, f, g, h, i, j, k, z) \ + bus_dma_tag_create(a, b, c, d, e, f, g, h, i, j, k, \ + busdma_lock_mutex, &Giant, z) +#else +#define BUS_DMA_ROOTARG bus_get_dma_tag(sbs->sbus_dev) +#define isp_dma_tag_create(a, b, c, d, e, f, g, h, i, j, k, z) \ + bus_dma_tag_create(a, b, c, d, e, f, g, h, i, j, k, \ + busdma_lock_mutex, &Giant, z) +#endif + static int isp_sbus_mbxdma(ispsoftc_t *isp) { @@ -497,10 +509,10 @@ isp_sbus_mbxdma(ispsoftc_t *isp) ISP_UNLOCK(isp); - if (bus_dma_tag_create(NULL, 1, BUS_SPACE_MAXADDR_24BIT+1, + if (isp_dma_tag_create(BUS_DMA_ROOTARG, 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, + BUS_SPACE_MAXADDR_24BIT, 0, &sbs->dmat)) { isp_prt(isp, ISP_LOGERR, "could not create master dma tag"); ISP_LOCK(isp); |
