summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/dma-dir.h6
-rw-r--r--include/dma.h11
2 files changed, 17 insertions, 0 deletions
diff --git a/include/dma-dir.h b/include/dma-dir.h
new file mode 100644
index 0000000000..ba107f10ce
--- /dev/null
+++ b/include/dma-dir.h
@@ -0,0 +1,6 @@
+enum dma_data_direction {
+ DMA_BIDIRECTIONAL = 0,
+ DMA_TO_DEVICE = 1,
+ DMA_FROM_DEVICE = 2,
+ DMA_NONE = 3,
+};
diff --git a/include/dma.h b/include/dma.h
index 899f831faa..fb75eec678 100644
--- a/include/dma.h
+++ b/include/dma.h
@@ -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 */