On 02/24/2017 06:19 PM, Dave Jiang wrote: > > > On 02/23/2017 05:41 PM, Dan Williams wrote: >> On Thu, Feb 23, 2017 at 4:13 PM, Vinod Koul <vinod.koul@xxxxxxxxx> wrote: >>> There have been discussions on need for change of dmaengine API for >>> a) allow sleepy invocation of the prepare descriptor so that drivers can >>> do the runtime pm (maybe move into core as well) >>> b) split the prepare operation to allocate and new prepare methods >> >> I'm wondering if you should you go even further and move to a more >> idiomatic model where a generic request is prepared outside the driver >> and passed in, rather than the current situation of requiring the >> driver to wrap a dma_async_tx_descriptor inside it's internal command >> structure. > > I wonder if we should support allowing proper batching of requests > before submission in the framework. Certain consumers of the DMA driver > can take advantage of that to improve performance. Some drivers already do this and the API allows this. issue_pending() is the operation that starts the transfer. So when a descriptor is submitted and there are already other descriptors pending it is OK to batch those descriptors together into one hardware-linked descriptor chain. -- 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