diff options
| author | Lars-Peter Clausen <lars@metafoo.de> | 2014-08-19 11:48:07 -0400 |
|---|---|---|
| committer | Mark Brown <broonie@linaro.org> | 2014-08-19 12:44:18 -0400 |
| commit | ff495d3a8ea4d46d237096e6521b24b7ba612e53 (patch) | |
| tree | eeda08e544a55ef11b5e1eb5267084458ea1d12e | |
| parent | 7d1311b93e58ed55f3a31cc8f94c4b8fe988a2b9 (diff) | |
ASoC: txx9: Don't opencode DMAengine API calls
Use the proper wrapper functions instead of directly calling the DMAengine
callback functions.
Also add the missing include to linux/dmaengine.h.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
| -rw-r--r-- | sound/soc/txx9/txx9aclc.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/sound/soc/txx9/txx9aclc.c b/sound/soc/txx9/txx9aclc.c index f0829de28708..cd71fd889d8b 100644 --- a/sound/soc/txx9/txx9aclc.c +++ b/sound/soc/txx9/txx9aclc.c | |||
| @@ -16,6 +16,7 @@ | |||
| 16 | #include <linux/platform_device.h> | 16 | #include <linux/platform_device.h> |
| 17 | #include <linux/scatterlist.h> | 17 | #include <linux/scatterlist.h> |
| 18 | #include <linux/slab.h> | 18 | #include <linux/slab.h> |
| 19 | #include <linux/dmaengine.h> | ||
| 19 | #include <sound/core.h> | 20 | #include <sound/core.h> |
| 20 | #include <sound/pcm.h> | 21 | #include <sound/pcm.h> |
| 21 | #include <sound/pcm_params.h> | 22 | #include <sound/pcm_params.h> |
| @@ -137,7 +138,7 @@ txx9aclc_dma_submit(struct txx9aclc_dmadata *dmadata, dma_addr_t buf_dma_addr) | |||
| 137 | } | 138 | } |
| 138 | desc->callback = txx9aclc_dma_complete; | 139 | desc->callback = txx9aclc_dma_complete; |
| 139 | desc->callback_param = dmadata; | 140 | desc->callback_param = dmadata; |
| 140 | desc->tx_submit(desc); | 141 | dmaengine_submit(desc); |
| 141 | return desc; | 142 | return desc; |
| 142 | } | 143 | } |
| 143 | 144 | ||
| @@ -160,7 +161,7 @@ static void txx9aclc_dma_tasklet(unsigned long data) | |||
| 160 | void __iomem *base = drvdata->base; | 161 | void __iomem *base = drvdata->base; |
| 161 | 162 | ||
| 162 | spin_unlock_irqrestore(&dmadata->dma_lock, flags); | 163 | spin_unlock_irqrestore(&dmadata->dma_lock, flags); |
| 163 | chan->device->device_control(chan, DMA_TERMINATE_ALL, 0); | 164 | dmaengine_terminate_all(chan); |
| 164 | /* first time */ | 165 | /* first time */ |
| 165 | for (i = 0; i < NR_DMA_CHAIN; i++) { | 166 | for (i = 0; i < NR_DMA_CHAIN; i++) { |
| 166 | desc = txx9aclc_dma_submit(dmadata, | 167 | desc = txx9aclc_dma_submit(dmadata, |
| @@ -169,7 +170,7 @@ static void txx9aclc_dma_tasklet(unsigned long data) | |||
| 169 | return; | 170 | return; |
| 170 | } | 171 | } |
| 171 | dmadata->dmacount = NR_DMA_CHAIN; | 172 | dmadata->dmacount = NR_DMA_CHAIN; |
| 172 | chan->device->device_issue_pending(chan); | 173 | dma_async_issue_pending(chan); |
| 173 | spin_lock_irqsave(&dmadata->dma_lock, flags); | 174 | spin_lock_irqsave(&dmadata->dma_lock, flags); |
| 174 | __raw_writel(ctlbit, base + ACCTLEN); | 175 | __raw_writel(ctlbit, base + ACCTLEN); |
| 175 | dmadata->frag_count = NR_DMA_CHAIN % dmadata->frags; | 176 | dmadata->frag_count = NR_DMA_CHAIN % dmadata->frags; |
| @@ -188,7 +189,7 @@ static void txx9aclc_dma_tasklet(unsigned long data) | |||
| 188 | dmadata->frag_count * dmadata->frag_bytes); | 189 | dmadata->frag_count * dmadata->frag_bytes); |
| 189 | if (!desc) | 190 | if (!desc) |
| 190 | return; | 191 | return; |
| 191 | chan->device->device_issue_pending(chan); | 192 | dma_async_issue_pending(chan); |
| 192 | 193 | ||
| 193 | spin_lock_irqsave(&dmadata->dma_lock, flags); | 194 | spin_lock_irqsave(&dmadata->dma_lock, flags); |
| 194 | dmadata->frag_count++; | 195 | dmadata->frag_count++; |
| @@ -266,7 +267,7 @@ static int txx9aclc_pcm_close(struct snd_pcm_substream *substream) | |||
| 266 | struct dma_chan *chan = dmadata->dma_chan; | 267 | struct dma_chan *chan = dmadata->dma_chan; |
| 267 | 268 | ||
| 268 | dmadata->frag_count = -1; | 269 | dmadata->frag_count = -1; |
| 269 | chan->device->device_control(chan, DMA_TERMINATE_ALL, 0); | 270 | dmaengine_terminate_all(chan); |
| 270 | return 0; | 271 | return 0; |
| 271 | } | 272 | } |
| 272 | 273 | ||
| @@ -398,8 +399,7 @@ static int txx9aclc_pcm_remove(struct snd_soc_platform *platform) | |||
| 398 | struct dma_chan *chan = dmadata->dma_chan; | 399 | struct dma_chan *chan = dmadata->dma_chan; |
| 399 | if (chan) { | 400 | if (chan) { |
| 400 | dmadata->frag_count = -1; | 401 | dmadata->frag_count = -1; |
| 401 | chan->device->device_control(chan, | 402 | dmaengine_terminate_all(chan); |
| 402 | DMA_TERMINATE_ALL, 0); | ||
| 403 | dma_release_channel(chan); | 403 | dma_release_channel(chan); |
| 404 | } | 404 | } |
| 405 | dev->dmadata[i].dma_chan = NULL; | 405 | dev->dmadata[i].dma_chan = NULL; |
