9
0
Fork 0

dma: add streaming DMA ops

This will allow us to implement cache maintenance in a platform
agnostic way.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Lucas Stach 2015-03-05 22:49:58 +01:00 committed by Sascha Hauer
parent 682b7d849a
commit a0c4e2203f
2 changed files with 17 additions and 0 deletions

6
include/dma-dir.h Normal file
View File

@ -0,0 +1,6 @@
enum dma_data_direction {
DMA_BIDIRECTIONAL = 0,
DMA_TO_DEVICE = 1,
DMA_FROM_DEVICE = 2,
DMA_NONE = 3,
};

View File

@ -11,6 +11,7 @@
#include <malloc.h>
#include <xfuncs.h>
#include <dma-dir.h>
#include <asm/dma.h>
#ifndef dma_alloc
@ -27,4 +28,14 @@ static inline void dma_free(void *mem)
}
#endif
/* streaming DMA - implement the below calls to support HAS_DMA */
void dma_sync_single_for_cpu(unsigned long address, size_t size,
enum dma_data_direction dir);
void dma_sync_single_for_device(unsigned long address, size_t size,
enum dma_data_direction dir);
void *dma_alloc_coherent(size_t size, dma_addr_t *dma_handle);
void dma_free_coherent(void *mem, dma_addr_t dma_handle, size_t size);
#endif /* __DMA_H */