commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=d4a041c76ff3057ea3c321d12ca5f94d182ff4aa
branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk

Signed-off-by: Sonic Zhang <[email protected]>
Signed-off-by: Bob Liu <[email protected]>
---
 drivers/char/bfin-dma.c |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/char/bfin-dma.c b/drivers/char/bfin-dma.c
index 6a31d93..49f5c5f 100644
--- a/drivers/char/bfin-dma.c
+++ b/drivers/char/bfin-dma.c
@@ -189,7 +189,7 @@ static int bdi_do_dma(struct dma_state *state, int async)
 
 	sg = &state->dsc_src;
 	while (sg && sg->cfg & DMAEN) {
-		stamp("src cfg:%x start:%lx end:%lx", sg->cfg, dsc_start(sg), dsc_end(sg));
+		stamp("src cfg:%lx start:%lx end:%lx", sg->cfg, dsc_start(sg), dsc_end(sg));
 		flush_dcache_range(dsc_start(sg), dsc_end(sg));
 		flush_dcache_range((unsigned)sg, (unsigned)(sg + sizeof(*sg)));
 
@@ -200,7 +200,7 @@ static int bdi_do_dma(struct dma_state *state, int async)
 
 	sg = &state->dsc_dst;
 	while (sg && sg->cfg & DMAEN) {
-		stamp("dst cfg:%x start:%lx end:%lx", sg->cfg, dsc_start(sg), dsc_end(sg));
+		stamp("dst cfg:%lx start:%lx end:%lx", sg->cfg, dsc_start(sg), dsc_end(sg));
 		invalidate_dcache_range(dsc_start(sg), dsc_end(sg));
 		flush_dcache_range((unsigned)sg, (unsigned)(sg + sizeof(*sg)));
 
@@ -214,12 +214,21 @@ static int bdi_do_dma(struct dma_state *state, int async)
 	set_dma_next_desc_addr(state->chan_src, &state->dsc_src);
 	set_dma_next_desc_addr(state->chan_dst, &state->dsc_dst);
 
+#ifdef DMA_MMR_SIZE_32
+	set_dma_config(state->chan_src, NDSIZE_6 |
+		set_bfin_dma_config(DIR_READ, DMA_FLOW_LIST, INTR_ON_BUF,
+			DIMENSION_LINEAR, DATA_SIZE_8, DMA_NOSYNC_KEEP_DMA_BUF));
+	set_dma_config(state->chan_dst, NDSIZE_6 |
+		set_bfin_dma_config(DIR_WRITE, DMA_FLOW_LIST, INTR_ON_BUF,
+			DIMENSION_LINEAR, DATA_SIZE_8, DMA_NOSYNC_KEEP_DMA_BUF));
+#else
 	set_dma_config(state->chan_src, NDSIZE_9 |
 		set_bfin_dma_config(DIR_READ, DMA_FLOW_LARGE, INTR_ON_BUF,
 			DIMENSION_LINEAR, DATA_SIZE_8, DMA_NOSYNC_KEEP_DMA_BUF));
 	set_dma_config(state->chan_dst, NDSIZE_9 |
 		set_bfin_dma_config(DIR_WRITE, DMA_FLOW_LARGE, INTR_ON_BUF,
 			DIMENSION_LINEAR, DATA_SIZE_8, DMA_NOSYNC_KEEP_DMA_BUF));
+#endif
 
 	enable_dma(state->chan_src);
 	enable_dma(state->chan_dst);
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to