X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-xtensa%2Fdma-mapping.h;h=3c7d537dd15d36a775cbe098f9948be8a5c680bf;hb=e18b094f0faa4889b06a112da17230a10b88c815;hp=c39c91dfcc695a55e16933d60974310460987151;hpb=7ff3e52cf2947ebd38c84159af68e5a29d228f6c;p=linux-2.6-omap-h63xx.git diff --git a/include/asm-xtensa/dma-mapping.h b/include/asm-xtensa/dma-mapping.h index c39c91dfcc6..3c7d537dd15 100644 --- a/include/asm-xtensa/dma-mapping.h +++ b/include/asm-xtensa/dma-mapping.h @@ -11,10 +11,10 @@ #ifndef _XTENSA_DMA_MAPPING_H #define _XTENSA_DMA_MAPPING_H -#include #include #include #include +#include /* * DMA-consistent mapping functions. @@ -58,11 +58,10 @@ dma_map_sg(struct device *dev, struct scatterlist *sg, int nents, BUG_ON(direction == DMA_NONE); for (i = 0; i < nents; i++, sg++ ) { - BUG_ON(!sg->page); + BUG_ON(!sg_page(sg)); - sg->dma_address = page_to_phys(sg->page) + sg->offset; - consistent_sync(page_address(sg->page) + sg->offset, - sg->length, direction); + sg->dma_address = sg_phys(sg); + consistent_sync(sg_virt(sg), sg->length, direction); } return nents; @@ -128,8 +127,7 @@ dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems, { int i; for (i = 0; i < nelems; i++, sg++) - consistent_sync(page_address(sg->page) + sg->offset, - sg->length, dir); + consistent_sync(sg_virt(sg), sg->length, dir); } static inline void @@ -138,8 +136,7 @@ dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems, { int i; for (i = 0; i < nelems; i++, sg++) - consistent_sync(page_address(sg->page) + sg->offset, - sg->length, dir); + consistent_sync(sg_virt(sg), sg->length, dir); } static inline int dma_mapping_error(dma_addr_t dma_addr) @@ -170,10 +167,10 @@ dma_get_cache_alignment(void) return L1_CACHE_BYTES; } -#define dma_is_consistent(d) (1) +#define dma_is_consistent(d, h) (1) static inline void -dma_cache_sync(void *vaddr, size_t size, +dma_cache_sync(struct device *dev, void *vaddr, size_t size, enum dma_data_direction direction) { consistent_sync(vaddr, size, direction);