aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorVinod Koul <vinod.koul@intel.com>2014-07-21 09:36:28 -0400
committerVinod Koul <vinod.koul@intel.com>2014-07-21 09:36:28 -0400
commitff4d02419ada5f2f174c646c58c5d07ddcf59de5 (patch)
treef5c4749fab368b0a5e9ae91856c415e81396b29f /drivers/dma
parentdd8ecfcac66b4485416b2d1df0ec4798b198d7d6 (diff)
parent0cdbee33ea42bfd5f61f824e258a1a0944dd2a27 (diff)
Merge commit 'renesas-shdma-for-v3.17' into for-linus
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/sh/shdma-arm.h4
-rw-r--r--drivers/dma/sh/shdmac.c15
2 files changed, 9 insertions, 10 deletions
diff --git a/drivers/dma/sh/shdma-arm.h b/drivers/dma/sh/shdma-arm.h
index a2b8258426c9..a1b0ef45d6a2 100644
--- a/drivers/dma/sh/shdma-arm.h
+++ b/drivers/dma/sh/shdma-arm.h
@@ -45,7 +45,7 @@ enum {
45 ((((i) & TS_LOW_BIT) << TS_LOW_SHIFT) |\ 45 ((((i) & TS_LOW_BIT) << TS_LOW_SHIFT) |\
46 (((i) & TS_HI_BIT) << TS_HI_SHIFT)) 46 (((i) & TS_HI_BIT) << TS_HI_SHIFT))
47 47
48#define CHCR_TX(xmit_sz) (DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL((xmit_sz))) 48#define CHCR_TX(xmit_sz) (DM_FIX | SM_INC | RS_ERS | TS_INDEX2VAL((xmit_sz)))
49#define CHCR_RX(xmit_sz) (DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL((xmit_sz))) 49#define CHCR_RX(xmit_sz) (DM_INC | SM_FIX | RS_ERS | TS_INDEX2VAL((xmit_sz)))
50 50
51#endif 51#endif
diff --git a/drivers/dma/sh/shdmac.c b/drivers/dma/sh/shdmac.c
index 146d5df926db..58eb85770eba 100644
--- a/drivers/dma/sh/shdmac.c
+++ b/drivers/dma/sh/shdmac.c
@@ -38,12 +38,12 @@
38#include "../dmaengine.h" 38#include "../dmaengine.h"
39#include "shdma.h" 39#include "shdma.h"
40 40
41/* DMA register */ 41/* DMA registers */
42#define SAR 0x00 42#define SAR 0x00 /* Source Address Register */
43#define DAR 0x04 43#define DAR 0x04 /* Destination Address Register */
44#define TCR 0x08 44#define TCR 0x08 /* Transfer Count Register */
45#define CHCR 0x0C 45#define CHCR 0x0C /* Channel Control Register */
46#define DMAOR 0x40 46#define DMAOR 0x40 /* DMA Operation Register */
47 47
48#define TEND 0x18 /* USB-DMAC */ 48#define TEND 0x18 /* USB-DMAC */
49 49
@@ -239,9 +239,8 @@ static void dmae_init(struct sh_dmae_chan *sh_chan)
239{ 239{
240 /* 240 /*
241 * Default configuration for dual address memory-memory transfer. 241 * Default configuration for dual address memory-memory transfer.
242 * 0x400 represents auto-request.
243 */ 242 */
244 u32 chcr = DM_INC | SM_INC | 0x400 | log2size_to_chcr(sh_chan, 243 u32 chcr = DM_INC | SM_INC | RS_AUTO | log2size_to_chcr(sh_chan,
245 LOG2_DEFAULT_XFER_SIZE); 244 LOG2_DEFAULT_XFER_SIZE);
246 sh_chan->xmit_shift = calc_xmit_shift(sh_chan, chcr); 245 sh_chan->xmit_shift = calc_xmit_shift(sh_chan, chcr);
247 chcr_write(sh_chan, chcr); 246 chcr_write(sh_chan, chcr);