From: Jassi Brar Date: Mon, 3 Jan 2011 10:36:25 +0000 (+0900) Subject: ARM: S3C64XX: Clear DMA_HALT upon start X-Git-Tag: v2.6.38-rc1~38^2^2~6^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d03e119c08359f9217154d6a4201689639fe29c8;p=thirdparty%2Fkernel%2Flinux.git 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 Signed-off-by: Kukjin Kim --- diff --git a/arch/arm/mach-s3c64xx/dma.c b/arch/arm/mach-s3c64xx/dma.c index e7d03ab41d80d..d9aa072ecee3d 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) config = readl(chan->regs + PL080S_CH_CONFIG); config |= PL080_CONFIG_ENABLE; + config &= ~PL080_CONFIG_HALT; pr_debug("%s: writing config %08x\n", __func__, config); writel(config, chan->regs + PL080S_CH_CONFIG);