Remove dma_cache_(wback|inv|wback_inv) functions

dma_cache_(wback|inv|wback_inv) were the earliest attempt on a generalized
cache managment API for I/O purposes.  Originally it was basically the raw
MIPS low level cache API exported to the entire world.  The API has
suffered from a lack of documentation, was not very widely used unlike it's
more modern brothers and can easily be replaced by dma_cache_sync.  So
remove it rsp.  turn the surviving bits back into an arch private API, as
discussed on linux-arch.

Signed-off-by: Ralf Baechle <[email protected]>
Acked-by: Paul Mundt <[email protected]>
Acked-by: Paul Mackerras <[email protected]>
Acked-by: David S. Miller <[email protected]>
Acked-by: Kyle McMartin <[email protected]>
Acked-by: Haavard Skinnemoen <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
Ralf Baechle 2007-10-16 23:29:42 -07:00 • committed by Linus Torvalds
commit 622a9edd91
24 changed files with 19 additions and 193 deletions

View file

@ -213,7 +213,7 @@ static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
}
#endif
dma_cache_wback_inv(addr, size);
__flush_purge_region(addr, size);
/* actual, physical DMA */
doing_pdma = 0;

View file

@ -326,31 +326,6 @@ __ioremap_mode(unsigned long offset, unsigned long size, unsigned long flags)
#define iounmap(addr) \
__iounmap((addr))
/*
* The caches on some architectures aren't dma-coherent and have need to
* handle this in software. There are three types of operations that
* can be applied to dma buffers.
*
* - dma_cache_wback_inv(start, size) makes caches and RAM coherent by
* writing the content of the caches back to memory, if necessary.
* The function also invalidates the affected part of the caches as
* necessary before DMA transfers from outside to memory.
* - dma_cache_inv(start, size) invalidates the affected parts of the
* caches. Dirty lines of the caches may be written back or simply
* be discarded. This operation is necessary before dma operations
* to the memory.
* - dma_cache_wback(start, size) writes back any dirty lines but does
* not invalidate the cache. This can be used before DMA reads from
* memory,
*/
#define dma_cache_wback_inv(_start,_size) \
__flush_purge_region(_start,_size)
#define dma_cache_inv(_start,_size) \
__flush_invalidate_region(_start,_size)
#define dma_cache_wback(_start,_size) \
__flush_wback_region(_start,_size)
/*
* Convert a physical pointer to a virtual kernel pointer for /dev/mem
* access