Commit ee80ca7c authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] ppc32: Update <asm-ppc/dma-mapping.h>

From: Tom Rini <trini@kernel.crashing.org>

include/asm-ppc/dma-mapping.h was made to be a 'real' header recently and
therefore missed out on the updates that davem did to all of the other
versions.  This updates <asm-ppc/dma-mapping.h> to match what's expected
now.
parent ddcc6311
...@@ -100,17 +100,42 @@ dma_map_sg(struct device *dev, struct scatterlist *sg, int nents, ...@@ -100,17 +100,42 @@ dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
/* We don't do anything here. */ /* We don't do anything here. */
#define dma_unmap_sg(dev, sg, nents, dir) do { } while (0) #define dma_unmap_sg(dev, sg, nents, dir) do { } while (0)
static inline void dma_sync_single(struct device *dev, dma_addr_t dma_handle, static inline void
size_t size, dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle,
enum dma_data_direction direction) size_t size,
enum dma_data_direction direction)
{ {
BUG_ON(direction == DMA_NONE); BUG_ON(direction == DMA_NONE);
consistent_sync(bus_to_virt(dma_handle), size, direction); consistent_sync(bus_to_virt(dma_handle), size, direction);
} }
static inline void dma_sync_sg(struct device *dev, struct scatterlist *sg, static inline void
int nelems, enum dma_data_direction direction) dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle,
size_t size,
enum dma_data_direction direction)
{
BUG_ON(direction == DMA_NONE);
consistent_sync(bus_to_virt(dma_handle), size, direction);
}
static inline void
dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg,
int nelems, enum dma_data_direction direction)
{
int i;
BUG_ON(direction == DMA_NONE);
for (i = 0; i < nelems; i++, sg++)
consistent_sync_page(sg->page, sg->offset,
sg->length, direction);
}
static inline void
dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg,
int nelems, enum dma_data_direction direction)
{ {
int i; int i;
...@@ -137,12 +162,21 @@ static inline int dma_get_cache_alignment(void) ...@@ -137,12 +162,21 @@ static inline int dma_get_cache_alignment(void)
} }
static inline void static inline void
dma_sync_single_range(struct device *dev, dma_addr_t dma_handle, dma_sync_single_range_for_cpu(struct device *dev, dma_addr_t dma_handle,
unsigned long offset, size_t size, unsigned long offset, size_t size,
enum dma_data_direction direction) enum dma_data_direction direction)
{
/* just sync everything, that's all the pci API can do */
dma_sync_single_for_cpu(dev, dma_handle, offset + size, direction);
}
static inline void
dma_sync_single_range_for_device(struct device *dev, dma_addr_t dma_handle,
unsigned long offset, size_t size,
enum dma_data_direction direction)
{ {
/* just sync everything, that's all the pci API can do */ /* just sync everything, that's all the pci API can do */
dma_sync_single(dev, dma_handle, offset + size, direction); dma_sync_single_for_device(dev, dma_handle, offset + size, direction);
} }
static inline void dma_cache_sync(void *vaddr, size_t size, static inline void dma_cache_sync(void *vaddr, size_t size,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment