]> err.no Git - linux-2.6/commitdiff
[AVR32] Make dma_sync_*_for_cpu no-ops
authorHaavard Skinnemoen <hskinnemoen@atmel.com>
Fri, 7 Sep 2007 15:00:25 +0000 (16:00 +0100)
committerHaavard Skinnemoen <hskinnemoen@atmel.com>
Thu, 11 Oct 2007 10:16:57 +0000 (12:16 +0200)
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: Haavard Skinnemoen <hskinnemoen@atmel.com>
include/asm-avr32/dma-mapping.h

index 21bb60bbb9a1889e3eb058f5b4045238b45bf33a..81e342636ac4cb3d93fc612b9018f5895f57e2c7 100644 (file)
@@ -264,7 +264,11 @@ static inline void
 dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle,
                        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
@@ -309,12 +313,11 @@ static inline void
 dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg,
                    int nents, enum dma_data_direction direction)
 {
-       int i;
-
-       for (i = 0; i < nents; i++) {
-               dma_cache_sync(dev, page_address(sg[i].page) + sg[i].offset,
-                              sg[i].length, 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