From: Jassi Brar Date: Wed, 13 Feb 2013 10:43:14 +0000 (+0530) Subject: DMA: PL330: allow submitting 2 requests at a time X-Git-Tag: next-20130312~59^2~1^2~3 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=76d1109b1355f9a7a81f07d6248b08eee3ee9386;p=karo-tx-linux.git DMA: PL330: allow submitting 2 requests at a time Fix the logic to allow mc programming of second transfer after first has been done, by removing immediate return upon success and iterating until we detect QFull or DMAC dying. Reported-by: Alvaro Moran Tested-by: Alvaro Moran Signed-off-by: Jassi Brar Signed-off-by: Vinod Koul --- diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c index 718153122759..14fd122eb778 100644 --- a/drivers/dma/pl330.c +++ b/drivers/dma/pl330.c @@ -2288,13 +2288,12 @@ static inline void fill_queue(struct dma_pl330_chan *pch) /* If already submitted */ if (desc->status == BUSY) - break; + continue; ret = pl330_submit_req(pch->pl330_chid, &desc->req); if (!ret) { desc->status = BUSY; - break; } else if (ret == -EAGAIN) { /* QFull or DMAC Dying */ break;