summaryrefslogtreecommitdiff
path: root/arch/cris/include/arch-v32/mach-a3/mach/dma.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-11-12 12:39:21 +0100
committerIngo Molnar <mingo@elte.hu>2008-11-12 12:39:21 +0100
commit708b8eae0fd532af73ea8350e6dcc10255ff7376 (patch)
treef336436934fd79bc91aff7112a9beb10bc4e839f /arch/cris/include/arch-v32/mach-a3/mach/dma.h
parentd98d38f2014ab79f28c126ff175d034891f7aefc (diff)
parentf21f237cf55494c3a4209de323281a3b0528da10 (diff)
downloadlinux-next-708b8eae0fd532af73ea8350e6dcc10255ff7376.tar.gz
Merge branch 'linus' into core/locking
Diffstat (limited to 'arch/cris/include/arch-v32/mach-a3/mach/dma.h')
-rw-r--r--arch/cris/include/arch-v32/mach-a3/mach/dma.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/cris/include/arch-v32/mach-a3/mach/dma.h b/arch/cris/include/arch-v32/mach-a3/mach/dma.h
new file mode 100644
index 000000000000..9e8eb13b601d
--- /dev/null
+++ b/arch/cris/include/arch-v32/mach-a3/mach/dma.h
@@ -0,0 +1,31 @@
+#ifndef _ASM_ARCH_CRIS_DMA_H
+#define _ASM_ARCH_CRIS_DMA_H
+
+/* Defines for using and allocating dma channels. */
+
+#define MAX_DMA_CHANNELS 12 /* 8 and 10 not used. */
+
+enum dma_owner {
+ dma_eth,
+ dma_ser0,
+ dma_ser1,
+ dma_ser2,
+ dma_ser3,
+ dma_ser4,
+ dma_iop,
+ dma_sser,
+ dma_strp,
+ dma_h264,
+ dma_jpeg
+};
+
+int crisv32_request_dma(unsigned int dmanr, const char *device_id,
+ unsigned options, unsigned bandwidth, enum dma_owner owner);
+void crisv32_free_dma(unsigned int dmanr);
+
+/* Masks used by crisv32_request_dma options: */
+#define DMA_VERBOSE_ON_ERROR 1
+#define DMA_PANIC_ON_ERROR (2|DMA_VERBOSE_ON_ERROR)
+#define DMA_INT_MEM 4
+
+#endif /* _ASM_ARCH_CRIS_DMA_H */