diff options
-rw-r--r-- | sys/arm/arm/busdma_machdep.c | 4 | ||||
-rw-r--r-- | sys/sys/bus_dma.h | 17 |
2 files changed, 13 insertions, 8 deletions
diff --git a/sys/arm/arm/busdma_machdep.c b/sys/arm/arm/busdma_machdep.c index 8b0f336..575b947 100644 --- a/sys/arm/arm/busdma_machdep.c +++ b/sys/arm/arm/busdma_machdep.c @@ -709,7 +709,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, struct uio *uio, * Release the mapping held by map. */ void -bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) +_bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) { map->flags &= ~DMAMAP_TYPE_MASK; return; @@ -735,7 +735,7 @@ bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op) } void -bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) +_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) { struct mbuf *m; struct uio *uio; diff --git a/sys/sys/bus_dma.h b/sys/sys/bus_dma.h index 0ef2c5f..3151d0b 100644 --- a/sys/sys/bus_dma.h +++ b/sys/sys/bus_dma.h @@ -277,17 +277,22 @@ int bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, * Perform a synchronization operation on the given map. */ void _bus_dmamap_sync(bus_dma_tag_t, bus_dmamap_t, bus_dmasync_op_t); -#define bus_dmamap_sync(dmat, dmamap, op) \ - if ((dmamap) != NULL) \ - _bus_dmamap_sync(dmat, dmamap, op) +#define bus_dmamap_sync(dmat, dmamap, op) \ + do { \ + if ((dmamap) != NULL) \ + _bus_dmamap_sync(dmat, dmamap, op); \ + } while (0) /* * Release the mapping held by map. */ void _bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map); -#define bus_dmamap_unload(dmat, dmamap) \ - if ((dmamap) != NULL) \ - _bus_dmamap_unload(dmat, dmamap) +#define bus_dmamap_unload(dmat, dmamap) \ + do { \ + if ((dmamap) != NULL) \ + _bus_dmamap_unload(dmat, dmamap); \ + } while (0) + #endif /* __sparc64__ */ #endif /* _BUS_DMA_H_ */ |