Intended usage of the dmaengine

From: Per Forlin
Date: Fri Jul 17 2009 - 06:33:32 EST


Hi,

I work with Linux in embedded systems and I got more interested in
dmaengine after Haavard Skinnemoen added the DMA SLAVE support. DMA
SLAVE opens up the dmaengine for embedded users and I wonder if there
is more room for support towards the embedded world. I've made a test
implementation of the dmaengine for our DMAC. Some parts that weren't
supported by the dmaengine had to be exported by the driver code. A
similar example of this is cyclic DMA jobs in dw_dmac.h.
Is this the preferable way to handle it? Or could this functionality
be added to the dmaengine instead?

Additional support that I would like to have in the "struct dma_engine" is
* stopping the dma channel transfer
* continue a stopped transfer
* PER2PER transfers (dma transfer between two peripherals)
* dma transfers from phy mem to per, and per to phy mem
* function to return the transfer count of an active dma transfer
(useful when the dma channel has been stopped deliberately)

I am willing to propose and contribute updates to the dmaengine
regarding this matter. With this email I would like to check with you
whether these types of new support are welcome in the dmaengine.

Thank you for your time and interest,
Per

PS
Dan and Haavard, I apologise for resending this email. I forgot to
send the email as plain text.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/