Re: [PATCH] Documentation: dmaengine: Add a documentation for the dma controller API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 14, 2014 at 09:57:53AM +0100, Russell King - ARM Linux wrote:
> On Thu, Aug 14, 2014 at 10:53:01AM +0200, Ludovic Desroches wrote:
> > On Wed, Jul 30, 2014 at 06:03:13PM +0200, Maxime Ripard wrote:
> > > The dmaengine is neither trivial nor properly documented at the moment, which
> > > means a lot of trial and error development, which is not that good for such a
> > > central piece of the system.
> > > 
> > > Attempt at making such a documentation.
> > 
> > Good idea, many questions are asked when writing a new dmaengine driver.
> > 
> > For instance I didn't find how to use the DMA_CTRL_ACK flags.
> > 
> > - How this flag has to be managed? For instance, async_tx_ack is used in
> > dmaengine driver but also in some devices.
> > - Is it mandatory to deal with this flag? It seems some dmaengine
> > drivers don't care about it.
> This is one part of the DMA engine API that even I don't understand.
> 
> It's got something to do with the async engine API, and seems to be
> something to do with whether a descriptor can have other transactions
> added to it, and whether a descriptor can be re-used (async-tx engines
> typically allocate a fixed set of descriptors and recycle them.)
Yes this is my understanding too. Async API IIUC can reuse descriptors and
if engine doesnt support this is a way to tell them please do use that.

For slave dmanegine API we need to ignore it.
> 
> I was never able to get to the bottom of what that flag meant or how
> it should be used with the DMA slave API (and I suspect everyone else
> just gave up trying to understand it as well.)

-- 
~Vinod
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux