aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorDong Aisheng <b29396@freescale.com>2011-07-19 00:09:56 -0400
committerVinod Koul <vinod.koul@intel.com>2011-07-26 06:03:28 -0400
commita62bae98a93e6c4d53b1e6c20715e94b4a5aca3c (patch)
treedae354d3b563ae4c6a601c2736b1b1db79aa9fc2 /drivers/dma
parentadd56ba711627c223e9e356d9398642abf7fa32d (diff)
ARM: mxs-dma: reset after disable channel
We met some channels in abnormal state after disable. Reset it to get a clean state. Signed-off-by: Dong Aisheng <b29396@freescale.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/mxs-dma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c
index f22a237b7dd6..be641cbd36fc 100644
--- a/drivers/dma/mxs-dma.c
+++ b/drivers/dma/mxs-dma.c
@@ -537,6 +537,7 @@ static int mxs_dma_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd,
537 switch (cmd) { 537 switch (cmd) {
538 case DMA_TERMINATE_ALL: 538 case DMA_TERMINATE_ALL:
539 mxs_dma_disable_chan(mxs_chan); 539 mxs_dma_disable_chan(mxs_chan);
540 mxs_dma_reset_chan(mxs_chan);
540 break; 541 break;
541 case DMA_PAUSE: 542 case DMA_PAUSE:
542 mxs_dma_pause_chan(mxs_chan); 543 mxs_dma_pause_chan(mxs_chan);