[PATCH] dma: pl330: revert commit 04abf5daf7d
Lars-Peter Clausen
lars at metafoo.de
Fri Dec 5 05:38:59 PST 2014
On 12/05/2014 02:14 PM, Jassi Brar wrote:
> From Documentation/crypto/async-tx-api.txt
> "... Once a driver-specific threshold is met the driver
> automatically issues pending operations. An application can force
> this event by calling async_tx_issue_pending_all() ..."
> That is, the DMA controller drivers may buffer transfer requests
> for optimization. However it is perfectly legal to start dma as soon
> as the user calls .tx_submit() on the descriptor, as the documentation
> specifies in include/linux/dmaengine.h
It's not according to what is in the DMAengine documentation
(Documentation/dmaengine.txt) and what we have been telling people for the
last couple of years.
There are supposed to be two different queues one for pending descriptors
and one for active descriptors. submit() adds a descriptor to the pending
list and issue_pending() moves all descriptors from the pending list to the
active list. Especially the driver must not automatically start transferring
a descriptor after it has been submitted but before issue_pending() has been
called.
- Lars
More information about the linux-arm-kernel
mailing list