diff options
author | Nicolas Ferre <nicolas.ferre@atmel.com> | 2011-04-30 10:57:46 -0400 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2011-05-02 06:12:09 -0400 |
commit | 53830cc75974a199b6b654c062ff8c54c58caa0b (patch) | |
tree | 2aec11425a76ffe996297c25e71f3dc0eb6ef662 /drivers/dma/at_hdmac_regs.h | |
parent | 9b3aa589eaa1366200062ce1f9cc7ddca8d1d578 (diff) |
dmaengine: at_hdmac: add cyclic DMA operation support
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/at_hdmac_regs.h')
-rw-r--r-- | drivers/dma/at_hdmac_regs.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/dma/at_hdmac_regs.h b/drivers/dma/at_hdmac_regs.h index 8303306ea825..c79a9e07f7be 100644 --- a/drivers/dma/at_hdmac_regs.h +++ b/drivers/dma/at_hdmac_regs.h | |||
@@ -181,12 +181,22 @@ txd_to_at_desc(struct dma_async_tx_descriptor *txd) | |||
181 | /*-- Channels --------------------------------------------------------*/ | 181 | /*-- Channels --------------------------------------------------------*/ |
182 | 182 | ||
183 | /** | 183 | /** |
184 | * atc_status - information bits stored in channel status flag | ||
185 | * | ||
186 | * Manipulated with atomic operations. | ||
187 | */ | ||
188 | enum atc_status { | ||
189 | ATC_IS_ERROR = 0, | ||
190 | ATC_IS_CYCLIC = 24, | ||
191 | }; | ||
192 | |||
193 | /** | ||
184 | * struct at_dma_chan - internal representation of an Atmel HDMAC channel | 194 | * struct at_dma_chan - internal representation of an Atmel HDMAC channel |
185 | * @chan_common: common dmaengine channel object members | 195 | * @chan_common: common dmaengine channel object members |
186 | * @device: parent device | 196 | * @device: parent device |
187 | * @ch_regs: memory mapped register base | 197 | * @ch_regs: memory mapped register base |
188 | * @mask: channel index in a mask | 198 | * @mask: channel index in a mask |
189 | * @error_status: transmit error status information from irq handler | 199 | * @status: transmit status information from irq/prep* functions |
190 | * to tasklet (use atomic operations) | 200 | * to tasklet (use atomic operations) |
191 | * @tasklet: bottom half to finish transaction work | 201 | * @tasklet: bottom half to finish transaction work |
192 | * @lock: serializes enqueue/dequeue operations to descriptors lists | 202 | * @lock: serializes enqueue/dequeue operations to descriptors lists |
@@ -201,7 +211,7 @@ struct at_dma_chan { | |||
201 | struct at_dma *device; | 211 | struct at_dma *device; |
202 | void __iomem *ch_regs; | 212 | void __iomem *ch_regs; |
203 | u8 mask; | 213 | u8 mask; |
204 | unsigned long error_status; | 214 | unsigned long status; |
205 | struct tasklet_struct tasklet; | 215 | struct tasklet_struct tasklet; |
206 | 216 | ||
207 | spinlock_t lock; | 217 | spinlock_t lock; |