omap: DMA: Init CDAC to zero

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linux Kernel Mailing List
Date: Tuesday, April 27, 2010 - 9:59 am

Gitweb:     http://git.kernel.org/linus/519e61666f4030426fc539d4e7102dc2bad41113
Commit:     519e61666f4030426fc539d4e7102dc2bad41113
Parent:     29501577a7f3c925d5273064752ce3dc356ccfad
Author:     manjugk manjugk <manjugk@ti.com>
AuthorDate: Thu Mar 4 07:11:56 2010 +0000
Committer:  Tony Lindgren <tony@atomide.com>
CommitDate: Thu Apr 22 17:34:27 2010 -0700

    omap: DMA: Init CDAC to zero
    
    The register DMA4_CDAC needs to be initialized to zero
    before starting DMA transfer.
    
    Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
    Cc: Govindraj R <govindraj.raja@ti.com>
    Cc: Kevin Hilman <khilman@deeprootsystems.com>
    Reported-by:S, Venkatraman <svenkatr@ti.com>
    Signed-off-by: Manjunatha GK <manjugk@ti.com>
    Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/plat-omap/dma.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 2ab224c..f6c9bdc 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -936,6 +936,15 @@ void omap_start_dma(int lch)
 {
 	u32 l;
 
+	/*
+	 * The CPC/CDAC register needs to be initialized to zero
+	 * before starting dma transfer.
+	 */
+	if (cpu_is_omap15xx())
+		dma_write(0, CPC(lch));
+	else
+		dma_write(0, CDAC(lch));
+
 	if (!omap_dma_in_1510_mode() && dma_chan[lch].next_lch != -1) {
 		int next_lch, cur_lch;
 		char dma_chan_link_map[OMAP_DMA4_LOGICAL_DMA_CH_COUNT];
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
omap: DMA: Init CDAC to zero, Linux Kernel Mailing ..., (Tue Apr 27, 9:59 am)