aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/dw_dmac_regs.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/dw_dmac_regs.h')
-rw-r--r--drivers/dma/dw_dmac_regs.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/dma/dw_dmac_regs.h b/drivers/dma/dw_dmac_regs.h
index 5eef6946a367..f298f69ecbf9 100644
--- a/drivers/dma/dw_dmac_regs.h
+++ b/drivers/dma/dw_dmac_regs.h
@@ -13,6 +13,18 @@
13 13
14#define DW_DMA_MAX_NR_CHANNELS 8 14#define DW_DMA_MAX_NR_CHANNELS 8
15 15
16/* flow controller */
17enum dw_dma_fc {
18 DW_DMA_FC_D_M2M,
19 DW_DMA_FC_D_M2P,
20 DW_DMA_FC_D_P2M,
21 DW_DMA_FC_D_P2P,
22 DW_DMA_FC_P_P2M,
23 DW_DMA_FC_SP_P2P,
24 DW_DMA_FC_P_M2P,
25 DW_DMA_FC_DP_P2P,
26};
27
16/* 28/*
17 * Redefine this macro to handle differences between 32- and 64-bit 29 * Redefine this macro to handle differences between 32- and 64-bit
18 * addressing, big vs. little endian, etc. 30 * addressing, big vs. little endian, etc.
@@ -146,13 +158,15 @@ struct dw_dma_chan {
146 158
147 /* these other elements are all protected by lock */ 159 /* these other elements are all protected by lock */
148 unsigned long flags; 160 unsigned long flags;
149 dma_cookie_t completed;
150 struct list_head active_list; 161 struct list_head active_list;
151 struct list_head queue; 162 struct list_head queue;
152 struct list_head free_list; 163 struct list_head free_list;
153 struct dw_cyclic_desc *cdesc; 164 struct dw_cyclic_desc *cdesc;
154 165
155 unsigned int descs_allocated; 166 unsigned int descs_allocated;
167
168 /* configuration passed via DMA_SLAVE_CONFIG */
169 struct dma_slave_config dma_sconfig;
156}; 170};
157 171
158static inline struct dw_dma_chan_regs __iomem * 172static inline struct dw_dma_chan_regs __iomem *