summaryrefslogtreecommitdiffstats
path: root/arch/arm/include
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2008-12-08 18:35:48 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2008-12-11 15:35:57 +0100
commitad9dd94c384f7ee37b798a9349b8c42da8fa99ab (patch)
tree940d4905c17c52ca7c19bee34a79a60d0d02e72c /arch/arm/include
parent[ARM] dma: rejig DMA initialization (diff)
downloadlinux-ad9dd94c384f7ee37b798a9349b8c42da8fa99ab.tar.xz
linux-ad9dd94c384f7ee37b798a9349b8c42da8fa99ab.zip
[ARM] dma: move RiscPC specific DMA data out of dma_struct
Separate the RiscPC specific (IOMD and floppy FIQ) data out of the core DMA structure by making the IOMD and floppy DMA supersets. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include')
-rw-r--r--arch/arm/include/asm/mach/dma.h18
1 files changed, 13 insertions, 5 deletions
diff --git a/arch/arm/include/asm/mach/dma.h b/arch/arm/include/asm/mach/dma.h
index 38a3693f1258..4326738ff36f 100644
--- a/arch/arm/include/asm/mach/dma.h
+++ b/arch/arm/include/asm/mach/dma.h
@@ -40,14 +40,22 @@ struct dma_struct {
unsigned int lock; /* Device is allocated */
const char *device_id; /* Device name */
- unsigned int dma_base; /* Controller base address */
- int dma_irq; /* Controller IRQ */
- struct scatterlist cur_sg; /* Current controller buffer */
- unsigned int state;
-
struct dma_ops *d_ops;
};
+struct floppy_dma {
+ struct dma_struct dma;
+ unsigned int fiq;
+};
+
+struct iomd_dma {
+ struct dma_struct dma;
+ unsigned int state;
+ unsigned long base; /* Controller base address */
+ int irq; /* Controller IRQ */
+ struct scatterlist cur_sg; /* Current controller buffer */
+};
+
/*
* isa_dma_add - add an ISA-style DMA channel
*/