Define bus_dmamap_load_buffer before bus_dmamap_load to make gcc happy.

This commit is contained in:
Olivier Houchard 2005-01-23 22:07:33 +00:00
parent 52611c608e
commit 356607e0c6

View File

@ -387,40 +387,6 @@ bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map)
dmat->flags);
}
/*
* Map the buffer buf into bus space using the dmamap map.
*/
int
bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf,
bus_size_t buflen, bus_dmamap_callback_t *callback,
void *callback_arg, int flags)
{
vm_offset_t lastaddr = 0;
int error, nsegs = -1;
#ifdef __GNUC__
bus_dma_segment_t dm_segments[dmat->nsegments];
#else
bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS];
#endif
map->flags &= ~DMAMAP_TYPE_MASK;
map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT;
map->buffer = buf;
map->len = buflen;
error = bus_dmamap_load_buffer(dmat,
dm_segments, map, buf, buflen, kernel_pmap,
flags, &lastaddr, &nsegs);
if (error)
(*callback)(callback_arg, NULL, 0, error);
else
(*callback)(callback_arg, dm_segments, nsegs + 1, error);
CTR4(KTR_BUSDMA, "bus_dmamap_load: tag %p tag flags 0x%x error %d "
"nsegs %d", dmat, dmat->flags, nsegs + 1, error);
return (0);
}
/*
* Utility function to load a linear buffer. lastaddrp holds state
* between invocations (for multiple-buffer loads). segp contains
@ -556,6 +522,40 @@ segdone:
return (error);
}
/*
* Map the buffer buf into bus space using the dmamap map.
*/
int
bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf,
bus_size_t buflen, bus_dmamap_callback_t *callback,
void *callback_arg, int flags)
{
vm_offset_t lastaddr = 0;
int error, nsegs = -1;
#ifdef __GNUC__
bus_dma_segment_t dm_segments[dmat->nsegments];
#else
bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS];
#endif
map->flags &= ~DMAMAP_TYPE_MASK;
map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT;
map->buffer = buf;
map->len = buflen;
error = bus_dmamap_load_buffer(dmat,
dm_segments, map, buf, buflen, kernel_pmap,
flags, &lastaddr, &nsegs);
if (error)
(*callback)(callback_arg, NULL, 0, error);
else
(*callback)(callback_arg, dm_segments, nsegs + 1, error);
CTR4(KTR_BUSDMA, "bus_dmamap_load: tag %p tag flags 0x%x error %d "
"nsegs %d", dmat, dmat->flags, nsegs + 1, error);
return (0);
}
/*
* Like bus_dmamap_load(), but for mbufs.
*/