Skip to content

Commit

Permalink
ARM: tegra: dma: not required to move requestor when stopping.
Browse files Browse the repository at this point in the history
It is not require to move the requestor of dma to INVALID
option before stopping dma.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
  • Loading branch information
Laxman Dewangan authored and Olof Johansson committed Feb 7, 2012
1 parent 76c2f6e commit 8bc4f55
Showing 1 changed file with 0 additions and 8 deletions.
8 changes: 0 additions & 8 deletions arch/arm/mach-tegra/dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@
#define CSR_ONCE (1<<27)
#define CSR_FLOW (1<<21)
#define CSR_REQ_SEL_SHIFT 16
#define CSR_REQ_SEL_MASK (0x1F<<CSR_REQ_SEL_SHIFT)
#define CSR_REQ_SEL_INVALID (31<<CSR_REQ_SEL_SHIFT)
#define CSR_WCOUNT_SHIFT 2
#define CSR_WCOUNT_MASK 0xFFFC

Expand Down Expand Up @@ -183,18 +181,12 @@ static void tegra_dma_stop(struct tegra_dma_channel *ch)

static int tegra_dma_cancel(struct tegra_dma_channel *ch)
{
u32 csr;
unsigned long irq_flags;

spin_lock_irqsave(&ch->lock, irq_flags);
while (!list_empty(&ch->list))
list_del(ch->list.next);

csr = readl(ch->addr + APB_DMA_CHAN_CSR);
csr &= ~CSR_REQ_SEL_MASK;
csr |= CSR_REQ_SEL_INVALID;
writel(csr, ch->addr + APB_DMA_CHAN_CSR);

tegra_dma_stop(ch);

spin_unlock_irqrestore(&ch->lock, irq_flags);
Expand Down

0 comments on commit 8bc4f55

Please sign in to comment.