Subject: [PATCH] dmaengine: qcom_hidma: release the descriptor before the callback

From: [email-masked] (Vinod Koul)
Date: Fri, 19 Aug 2016 11:22:52 +0530

On Thu, Aug 18, 2016 at 11:48:52PM -0400, Sinan Kaya wrote:
> On 8/18/2016 11:42 PM, Vinod Koul wrote:
> > On Thu, Aug 18, 2016 at 11:26:28PM -0400, Sinan Kaya wrote:
> >> On 8/18/2016 10:48 PM, Vinod Koul wrote:
> >>>> Keep a size limited list with error cookies and flush them in terminate all?
> >>> I think so, terminate_all anyway cleans up the channel. Btw what is the
> >>> behaviour on error? Do you terminate or somthing else?
> >>>
> >>
> >> On error, I flush all outstanding transactions with an error code and I reset
> >> the channel. After the reset, the DMA channel is functional again. The client
> >> doesn't need to shutdown anything.
> > 
> > You mean from the client context or driver?
> > 
> 
> The client doesn't need to call device_free_chan_resources and device_terminate_all
> to be specific. Client can certainly call these if it needs to but it is not
> required to recover the channel.

You didn't answer my question!

On error you said you flush, so who does that?

> After the reset in error condition, the client can continue issuing new requests
> with tx_submit and device_issue_pending as usual.

-- 
~Vinod