diff options
author | Dong Aisheng <b29396@freescale.com> | 2011-07-19 00:09:56 -0400 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2011-07-26 06:03:28 -0400 |
commit | a62bae98a93e6c4d53b1e6c20715e94b4a5aca3c (patch) | |
tree | dae354d3b563ae4c6a601c2736b1b1db79aa9fc2 /drivers/dma | |
parent | add56ba711627c223e9e356d9398642abf7fa32d (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.c | 1 |
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); |