All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel
@ 2013-06-15  4:51 Qiao Zhou
  2013-06-15  4:51 ` Qiao Zhou
  0 siblings, 1 reply; 4+ messages in thread
From: Qiao Zhou @ 2013-06-15  4:51 UTC (permalink / raw)
  To: djbw, vinod.koul, zhangfei.gao, linux-kernel; +Cc: Qiao Zhou

V2 -> V1:
1, mask dma interrupt when disable DMA channel.
2, remove patch v1.

if the dma channel is disabled without interrupt masked, the interrupt
status may still be set. next time when dma channel is enabled again,
the old interrupt status may trigger the interrupt wrongly. we need to
mask the interrupt when dma channel is disabled.

Qiao Zhou (1):
  dma: mmp_tdma: disable irq when disabling dma channel

 drivers/dma/mmp_tdma.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel
  2013-06-15  4:51 [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel Qiao Zhou
@ 2013-06-15  4:51 ` Qiao Zhou
  2013-06-15  7:52   ` zhangfei gao
  2013-06-21  8:52   ` Vinod Koul
  0 siblings, 2 replies; 4+ messages in thread
From: Qiao Zhou @ 2013-06-15  4:51 UTC (permalink / raw)
  To: djbw, vinod.koul, zhangfei.gao, linux-kernel; +Cc: Qiao Zhou

mask dma irq when disabling dma channel, so that interrupt status
will not be set and interrupt won't come again.

Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>
---
 drivers/dma/mmp_tdma.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
index 43d5a6c..9b93665 100644
--- a/drivers/dma/mmp_tdma.c
+++ b/drivers/dma/mmp_tdma.c
@@ -154,6 +154,10 @@ static void mmp_tdma_disable_chan(struct mmp_tdma_chan *tdmac)
 {
 	writel(readl(tdmac->reg_base + TDCR) & ~TDCR_CHANEN,
 					tdmac->reg_base + TDCR);
+
+	/* disable irq */
+	writel(0, tdmac->reg_base + TDIMR);
+
 	tdmac->status = DMA_SUCCESS;
 }
 
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel
  2013-06-15  4:51 ` Qiao Zhou
@ 2013-06-15  7:52   ` zhangfei gao
  2013-06-21  8:52   ` Vinod Koul
  1 sibling, 0 replies; 4+ messages in thread
From: zhangfei gao @ 2013-06-15  7:52 UTC (permalink / raw)
  To: Qiao Zhou; +Cc: djbw, Vinod Koul, linux-kernel@vger.kernel.org

On Sat, Jun 15, 2013 at 12:51 PM, Qiao Zhou <zhouqiao@marvell.com> wrote:
> mask dma irq when disabling dma channel, so that interrupt status
> will not be set and interrupt won't come again.
>
> Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>

Acked-by: Zhangfei Gao <zhangfei.gao@gmail.com>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel
  2013-06-15  4:51 ` Qiao Zhou
  2013-06-15  7:52   ` zhangfei gao
@ 2013-06-21  8:52   ` Vinod Koul
  1 sibling, 0 replies; 4+ messages in thread
From: Vinod Koul @ 2013-06-21  8:52 UTC (permalink / raw)
  To: Qiao Zhou; +Cc: djbw, zhangfei.gao, linux-kernel

On Sat, Jun 15, 2013 at 12:51:48PM +0800, Qiao Zhou wrote:
> mask dma irq when disabling dma channel, so that interrupt status
> will not be set and interrupt won't come again.
> 
> Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>
Applied, thanks

--
~Vinod
> ---
>  drivers/dma/mmp_tdma.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
> index 43d5a6c..9b93665 100644
> --- a/drivers/dma/mmp_tdma.c
> +++ b/drivers/dma/mmp_tdma.c
> @@ -154,6 +154,10 @@ static void mmp_tdma_disable_chan(struct mmp_tdma_chan *tdmac)
>  {
>  	writel(readl(tdmac->reg_base + TDCR) & ~TDCR_CHANEN,
>  					tdmac->reg_base + TDCR);
> +
> +	/* disable irq */
> +	writel(0, tdmac->reg_base + TDIMR);
> +
>  	tdmac->status = DMA_SUCCESS;
>  }
>  
> -- 
> 1.7.0.4
> 

-- 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-06-21  9:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-15  4:51 [PATCH V2] dma: mmp_tdma: disable irq when disabling dma channel Qiao Zhou
2013-06-15  4:51 ` Qiao Zhou
2013-06-15  7:52   ` zhangfei gao
2013-06-21  8:52   ` Vinod Koul

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.