aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/dw_dmac.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-05-04 10:00:16 -0400
committerTakashi Iwai <tiwai@suse.de>2009-05-04 10:00:16 -0400
commit3a20ac2c52b1317f5a5f0bd9cd3cbe8495ddd026 (patch)
tree9a912f2609cefb9698b5cce09cd240bd6dbd09fb /include/linux/dw_dmac.h
parent18cc8d8d9b74c446832336d8f6e1afb145f9431b (diff)
parent3e5b50165fd0be080044586f43fcdd460ed27610 (diff)
Merge branch 'fix/pcm-jiffies-check' into fix/asoc
Diffstat (limited to 'include/linux/dw_dmac.h')
-rw-r--r--include/linux/dw_dmac.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/dw_dmac.h b/include/linux/dw_dmac.h
index d797dde247f7..c8aad713a046 100644
--- a/include/linux/dw_dmac.h
+++ b/include/linux/dw_dmac.h
@@ -74,4 +74,23 @@ struct dw_dma_slave {
74#define DWC_CFGL_HS_DST_POL (1 << 18) /* dst handshake active low */ 74#define DWC_CFGL_HS_DST_POL (1 << 18) /* dst handshake active low */
75#define DWC_CFGL_HS_SRC_POL (1 << 19) /* src handshake active low */ 75#define DWC_CFGL_HS_SRC_POL (1 << 19) /* src handshake active low */
76 76
77/* DMA API extensions */
78struct dw_cyclic_desc {
79 struct dw_desc **desc;
80 unsigned long periods;
81 void (*period_callback)(void *param);
82 void *period_callback_param;
83};
84
85struct dw_cyclic_desc *dw_dma_cyclic_prep(struct dma_chan *chan,
86 dma_addr_t buf_addr, size_t buf_len, size_t period_len,
87 enum dma_data_direction direction);
88void dw_dma_cyclic_free(struct dma_chan *chan);
89int dw_dma_cyclic_start(struct dma_chan *chan);
90void dw_dma_cyclic_stop(struct dma_chan *chan);
91
92dma_addr_t dw_dma_get_src_addr(struct dma_chan *chan);
93
94dma_addr_t dw_dma_get_dst_addr(struct dma_chan *chan);
95
77#endif /* DW_DMAC_H */ 96#endif /* DW_DMAC_H */