[PATCH v3 6/6] Documentation: dmaengine: document DMA_CTRL_ACK

Vinod Koul vinod.koul at intel.com
Mon May 25 09:52:57 PDT 2015


On Thu, May 14, 2015 at 10:31:39PM +0200, Robert Jarzmik wrote:
> Maxime Ripard <maxime.ripard at free-electrons.com> writes:
> 
> > Hi Robert,
> >
> >>    * DMA_CTRL_ACK
> >> -    - Undocumented feature
> >> -    - No one really has an idea of what it's about, besides being
> >> -      related to reusing the DMA transaction descriptors or having
> >> -      additional transactions added to it in the async-tx API
> >> -    - Useless in the case of the slave API
> >> +    - if set, the TX transfer can be reused after being completed.
> >
> > Your sentences should start with an upper-case letter.
> Ack.
> 
> >> +    - there is a guarantee the TX won't be freed until it is acked
> >> +      by async_tx_ack()
> >
> > We never talked about what a "TX transfer" is in the
> > documentation. That should be documented.
> I'll remove the "TX", the transfer is widely used in this documentation.
> 
> >
> >> +    - as a consequence, if a device driver wants to skip the dma_map_sg() and
> >> +      dma_unmap_sg() because the DMA'd data wasn't used, it can resubmit the
> >> +      transfer right after its completion.
> >
> > From a provider PoV, the data should always be mapped and / or
> > allocated in coherent way, so I'm not sure how does that's relevant in
> > the provider doc.
> It's relevant because it says the mapping/unmapping is not necessary _between_ 2
> submission of a transfer. This implies it is mapped, as it is a requirement for
> the very first submission.
> 
> > Also, we should still mention that it's !slave API only.
> Certainly not, it's fully slave API, that's the purpose of this patch.
Its is not dependent on slave, it cna be used by slave as well as other
users

-- 
~Vinod




More information about the linux-arm-kernel mailing list