ARM: S3C24XX: DMA resume regression fix
authorGusakov Andrey <dron0gus@gmail.com>
Fri, 2 Mar 2012 22:32:36 +0000 (07:32 +0900)
committerKukjin Kim <kgene.kim@samsung.com>
Fri, 2 Mar 2012 22:36:59 +0000 (07:36 +0900)
s3c2410_dma_suspend suspends channels from 0 to dma_channels.
s3c2410_dma_resume resumes channels in reverse order. So
pointer should be decremented instead of being incremented.

Signed-off-by: Gusakov Andrey <dron0gus@gmail.com>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
arch/arm/plat-s3c24xx/dma.c

index 9fe35348e03b433d5294cfcd02c1742c268f3391..2bab4c99a2342218fff937cbe5bc701149f76d0c 100644 (file)
@@ -1249,7 +1249,7 @@ static void s3c2410_dma_resume(void)
        struct s3c2410_dma_chan *cp = s3c2410_chans + dma_channels - 1;
        int channel;
 
-       for (channel = dma_channels - 1; channel >= 0; cp++, channel--)
+       for (channel = dma_channels - 1; channel >= 0; cp--, channel--)
                s3c2410_dma_resume_chan(cp);
 }