aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c64xx
diff options
context:
space:
mode:
authorJassi Brar <jassi.brar@samsung.com>2011-01-03 05:36:25 -0500
committerKukjin Kim <kgene.kim@samsung.com>2011-01-03 05:36:25 -0500
commitd03e119c08359f9217154d6a4201689639fe29c8 (patch)
tree9bfd5a958f3a81999fe029b302768baf4b7bbec2 /arch/arm/mach-s3c64xx
parent387c31c7e5c9805b0aef8833d1731a5fe7bdea14 (diff)
ARM: S3C64XX: Clear DMA_HALT upon start
The stop function sets the DMA_HALT bit, which prevents the DMA transfer to resume after stop, for example during audio PAUSE/PLAY cycle. Clear the HALT bit during start. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-s3c64xx')
-rw-r--r--arch/arm/mach-s3c64xx/dma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c64xx/dma.c b/arch/arm/mach-s3c64xx/dma.c
index e7d03ab41d80..d9aa072ecee3 100644
--- a/arch/arm/mach-s3c64xx/dma.c
+++ b/arch/arm/mach-s3c64xx/dma.c
@@ -212,6 +212,7 @@ static int s3c64xx_dma_start(struct s3c2410_dma_chan *chan)
212 212
213 config = readl(chan->regs + PL080S_CH_CONFIG); 213 config = readl(chan->regs + PL080S_CH_CONFIG);
214 config |= PL080_CONFIG_ENABLE; 214 config |= PL080_CONFIG_ENABLE;
215 config &= ~PL080_CONFIG_HALT;
215 216
216 pr_debug("%s: writing config %08x\n", __func__, config); 217 pr_debug("%s: writing config %08x\n", __func__, config);
217 writel(config, chan->regs + PL080S_CH_CONFIG); 218 writel(config, chan->regs + PL080S_CH_CONFIG);