diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2010-02-11 19:50:10 +0300 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-03-02 05:09:02 +0300 |
commit | 027811b9b81a6b3ae5aa20c3302897bee9dcf09e (patch) | |
tree | cde9b764d10d7ba9d0a41d9c780bf9032214dcae /drivers/dma/shdma.h | |
parent | 47a4dc26eeb89a3746f9b1e2092602b40469640a (diff) | |
download | linux-027811b9b81a6b3ae5aa20c3302897bee9dcf09e.tar.xz |
dmaengine: shdma: convert to platform device resources
The shdma dmaengine driver currently uses numerous macros to support various
platforms, selected by ifdef's. Convert it to use platform device resources and
lists of channel descriptors to specify register locations, interrupt numbers
and other system-specific configuration variants. Unavoidably, we have to
simultaneously convert all shdma users to provide those resources.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/dma/shdma.h')
-rw-r--r-- | drivers/dma/shdma.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/dma/shdma.h b/drivers/dma/shdma.h index 7e227f3c87c4..800fd884be83 100644 --- a/drivers/dma/shdma.h +++ b/drivers/dma/shdma.h @@ -47,14 +47,18 @@ struct sh_dmae_chan { struct tasklet_struct tasklet; /* Tasklet */ int descs_allocated; /* desc count */ int xmit_shift; /* log_2(bytes_per_xfer) */ + int irq; int id; /* Raw id of this channel */ + u32 __iomem *base; char dev_id[16]; /* unique name per DMAC of channel */ }; struct sh_dmae_device { struct dma_device common; struct sh_dmae_chan *chan[MAX_DMA_CHANNELS]; - struct sh_dmae_pdata pdata; + struct sh_dmae_pdata *pdata; + u32 __iomem *chan_reg; + u16 __iomem *dmars; }; #define to_sh_chan(chan) container_of(chan, struct sh_dmae_chan, common) |