summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHuang Chao <chao7.huang@samsung.com>2014-06-13 11:22:17 +0800
committerSylwester Nawrocki <s.nawrocki@samsung.com>2014-06-17 01:46:19 -0700
commitcce3e4d22a457d9ff6053af9fd4a18a50dd36557 (patch)
tree13771528bae7757624fc56583cf87851067d2aa1
parentb3524144a0d308203f6c44595a93ab4dec15dd1f (diff)
downloadlinux-3.10-cce3e4d22a457d9ff6053af9fd4a18a50dd36557.tar.gz
linux-3.10-cce3e4d22a457d9ff6053af9fd4a18a50dd36557.tar.bz2
linux-3.10-cce3e4d22a457d9ff6053af9fd4a18a50dd36557.zip
dma: pl330: Implement the dma channel pause/resume interfaces
This patch implements dma pause and resume interfaces for the pl330 dmac driver. When the dmaengine_pause callback is called from audio platform driver, the pl330 driver should handle the pause command. And when the dmaengine_resume callback function is called, the pl330 driver should handle the resume command. In order not to return error code for pause/resume operation, currently there is nothing implemented for pause and resume switch interfaces, and there might have some continuous work for pl330 channel configuration in the future. However, the odroidx2/u3 board can pause/resume with this implementation. Change-Id: I584106a4d7861fde308997e6843088fbf0a9b1bb Signed-off-by: Huang Chao <chao7.huang@samsung.com>
-rw-r--r--drivers/dma/pl330.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index 24f8ae3f376..ed8cacdddcb 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -2416,6 +2416,12 @@ static int pl330_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd, unsigned
pch->burst_len = slave_config->src_maxburst;
}
break;
+ case DMA_PAUSE:
+ /* TODO: set up dma channel and config register if any */
+ break;
+ case DMA_RESUME:
+ /* TODO: set up dma channel and config register if any */
+ break;
default:
dev_err(pch->dmac->pif.dev, "Not supported command.\n");
return -ENXIO;