All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: linux-sh@vger.kernel.org
Subject: Re: [PATCH v3 4/6] dma: rcar-dma: use result of updated get_residue in tx_status
Date: Thu, 15 Oct 2015 16:49:15 +0000	[thread overview]
Message-ID: <12352025.ijSEGDcSkl@avalon> (raw)
In-Reply-To: <1443559488-2416-5-git-send-email-hamzahfrq.sub@gmail.com>

Hi Vinod,

On Monday 12 October 2015 20:42:32 Vinod Koul wrote:
> On Tue, Sep 29, 2015 at 10:44:46PM +0200, hamzahfrq.sub@gmail.com wrote:
> > From: Muhammad Hamza Farooq <mfarooq@visteon.com>
> > 
> > Signed-off-by: Muhammad Hamza Farooq <mfarooq@visteon.com>
> > ---
> > 
> >  drivers/dma/sh/rcar-dmac.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c
> > index 6c806d0..0b5a367 100644
> > --- a/drivers/dma/sh/rcar-dmac.c
> > +++ b/drivers/dma/sh/rcar-dmac.c
> > @@ -1258,6 +1258,10 @@ static enum dma_status rcar_dmac_tx_status(struct
> > dma_chan *chan,> 
> >  	residue = rcar_dmac_chan_get_residue(rchan, cookie);
> >  	spin_unlock_irqrestore(&rchan->lock, flags);
> > 
> > +	/* if there's no residue, the cookie is complete */
> > +	if (!residue)
> > +		return DMA_COMPLETE;
> > +
> 
> why would we get this, you should not be here if the status is complete and
> exited before you checked the status

The status check is a software check, while the residue check reads hardware 
registers. The hardware might have complete the transfer but the interrupt 
handler might not have had a chance to run yet.

Is it valid from a DMA engine API point of view to return a DMA_IN_PROGRESS 
status with a 0 residue ?

-- 
Regards,

Laurent Pinchart


      parent reply	other threads:[~2015-10-15 16:49 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-29 20:44 [PATCH v3 4/6] dma: rcar-dma: use result of updated get_residue in tx_status hamzahfrq.sub
2015-10-12 15:24 ` Vinod Koul
2015-10-15 16:49 ` Laurent Pinchart [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=12352025.ijSEGDcSkl@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=linux-sh@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.