提交 b5a8e736 编写于 作者: H Haavard Skinnemoen

[AVR32] Make dma_sync_*_for_cpu no-ops

I don't think the dma_sync_*_for_cpu ever did anything useful. We
flush the relevant cache lines when mapping the buffer or when calling
dma_sync_*_for_device(), and the CPU isn't allowed to touch the buffer
after that.

In other words, if these functions actually have anything to flush
from the caches, we're already in trouble.
Signed-off-by: NHaavard Skinnemoen <hskinnemoen@atmel.com>
上级 0d2372e5
...@@ -264,7 +264,11 @@ static inline void ...@@ -264,7 +264,11 @@ static inline void
dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle,
size_t size, enum dma_data_direction direction) size_t size, enum dma_data_direction direction)
{ {
dma_cache_sync(dev, bus_to_virt(dma_handle), size, direction); /*
* No need to do anything since the CPU isn't supposed to
* touch this memory after we flushed it at mapping- or
* sync-for-device time.
*/
} }
static inline void static inline void
...@@ -309,12 +313,11 @@ static inline void ...@@ -309,12 +313,11 @@ static inline void
dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg,
int nents, enum dma_data_direction direction) int nents, enum dma_data_direction direction)
{ {
int i; /*
* No need to do anything since the CPU isn't supposed to
for (i = 0; i < nents; i++) { * touch this memory after we flushed it at mapping- or
dma_cache_sync(dev, page_address(sg[i].page) + sg[i].offset, * sync-for-device time.
sg[i].length, direction); */
}
} }
static inline void static inline void
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册