linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] DMA: PL330: allow submitting 2 requests at a time
@ 2013-02-13 10:43 Jassi Brar
  2013-02-14 14:25 ` Vinod Koul
  2013-03-04  4:56 ` Vinod Koul
  0 siblings, 2 replies; 3+ messages in thread
From: Jassi Brar @ 2013-02-13 10:43 UTC (permalink / raw)
  To: linux-arm-kernel

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 <dirac3000@gmail.com>
Tested-by: Alvaro Moran <dirac3000@gmail.com>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
---
 drivers/dma/pl330.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index 80680ee..c1a867e 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -2282,13 +2282,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;
-- 
1.7.10.4

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

* [PATCH] DMA: PL330: allow submitting 2 requests at a time
  2013-02-13 10:43 [PATCH] DMA: PL330: allow submitting 2 requests at a time Jassi Brar
@ 2013-02-14 14:25 ` Vinod Koul
  2013-03-04  4:56 ` Vinod Koul
  1 sibling, 0 replies; 3+ messages in thread
From: Vinod Koul @ 2013-02-14 14:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 13, 2013 at 04:13:14PM +0530, Jassi Brar wrote:
> 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.
This is a fix, should be sent to stable too?

--
~Vinod
> 
> Reported-by: Alvaro Moran <dirac3000@gmail.com>
> Tested-by: Alvaro Moran <dirac3000@gmail.com>
> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
> ---
>  drivers/dma/pl330.c |    3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index 80680ee..c1a867e 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -2282,13 +2282,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;
> -- 
> 1.7.10.4
> 

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

* [PATCH] DMA: PL330: allow submitting 2 requests at a time
  2013-02-13 10:43 [PATCH] DMA: PL330: allow submitting 2 requests at a time Jassi Brar
  2013-02-14 14:25 ` Vinod Koul
@ 2013-03-04  4:56 ` Vinod Koul
  1 sibling, 0 replies; 3+ messages in thread
From: Vinod Koul @ 2013-03-04  4:56 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 13, 2013 at 04:13:14PM +0530, Jassi Brar wrote:
> 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 <dirac3000@gmail.com>
> Tested-by: Alvaro Moran <dirac3000@gmail.com>
> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
Applied, thanks

> ---
>  drivers/dma/pl330.c |    3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index 80680ee..c1a867e 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -2282,13 +2282,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;
> -- 
> 1.7.10.4
> 

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

end of thread, other threads:[~2013-03-04  4:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-13 10:43 [PATCH] DMA: PL330: allow submitting 2 requests at a time Jassi Brar
2013-02-14 14:25 ` Vinod Koul
2013-03-04  4:56 ` Vinod Koul

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).