From c3711f5e30c77a48767279922609210112727d34 Mon Sep 17 00:00:00 2001 From: Linus Walleij Date: Tue, 31 Aug 2010 14:12:08 +0200 Subject: [PATCH 21/58] DMAENGINE: free txd list if submission fails on PL08X Sometimes oversubscribed channels fail to mux in a signal line for the transmission, and we bail out. Make sure we also clean out any pending txd lists when this happens. Signed-off-by: Linus Walleij --- 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 65f595c..65892d5 100644 --- a/drivers/dma/amba-pl08x.c +++ b/drivers/dma/amba-pl08x.c @@ -1270,6 +1270,7 @@ static dma_cookie_t pl08x_tx_submit(struct dma_async_tx_descriptor *tx) ret = prep_phy_channel(plchan, txd); if (ret) { /* No physical channel available, cope with it */ + pl08x_free_txd_list(pl08x, plchan); spin_unlock_irqrestore(&plchan->lock, flags); return -EBUSY; } -- 1.6.3.3