[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1334830824-10908-1-git-send-email-ciminaghi@gnudd.com>
Date: Thu, 19 Apr 2012 12:20:24 +0200
From: ciminaghi@...dd.com
To: vinod.koul@...el.com, linux-kernel@...r.kernel.org
Cc: dan.j.williams@...el.com, pgeninatti@...t-in.com,
acolosimo@...t-in.com, alarosa@...nintellect.eu,
Davide Ciminaghi <ciminaghi@...dd.com>
Subject: [PATCH] dmaengine/amba-pl08x : reset phychan_hold on terminate all
From: Davide Ciminaghi <ciminaghi@...dd.com>
When a client calls pl08x_control with DMA_TERMINATE_ALL, it is correct
to terminate and release the phy channel currently in use (if one is in use),
but the phychan_hold counter must also be reset (otherwise it could get
trapped in an unbalanced state).
Signed-off-by: Davide Ciminaghi <ciminaghi@...dd.com>
---
drivers/dma/amba-pl08x.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/dma/amba-pl08x.c b/drivers/dma/amba-pl08x.c
index c301a8e..3d704ab 100644
--- a/drivers/dma/amba-pl08x.c
+++ b/drivers/dma/amba-pl08x.c
@@ -1429,6 +1429,7 @@ static int pl08x_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd,
* signal
*/
release_phy_channel(plchan);
+ plchan->phychan_hold = 0;
}
/* Dequeue jobs and free LLIs */
if (plchan->at) {
--
1.7.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists