Re: Is there a binding for IORESOURCE_DMA population?
From: Shawn Guo <hidden>
Date: 2011-07-17 07:38:45
On Sun, Jul 17, 2011 at 04:54:21AM +0800, Tabi Timur-B04825 wrote:
Arnd Bergmann wrote:quoted
But that would mean that the code interpreting that property has to know about the specific dmaengine implementation, and needs to be changed every time we add a new one.And like I said, the SSI driver will already need to know the specifics of the DMA controller. The PowerPC device tree node for the SSI already works this way: ssi@15000 { compatible = "fsl,mpc8610-ssi"; cell-index = <0>; reg = <0x15000 0x100>; interrupts = <75 2 0 0>; fsl,mode = "i2s-slave"; codec-handle = <&wm8776>; fsl,playback-dma = <&dma00>; fsl,capture-dma = <&dma01>; fsl,fifo-depth = <15>; fsl,ssi-asynchronous; }; On PowerPC, the SSI driver knows that "fsl,playback-dma" points to a Freescale e500 DMA controller channel node. The driver currently does not work with any other DMA controller. This is what needs to be fixed.quoted
Alternatively, you'd end up with the device drivers having to read the properties themselves to get to the number and pass that to the common dmaengine code.The SSI won't be able to use any common DMA engine code, because DMA needs to be set up in a very specific way for audio.
i.mx sdma was implemented as a generic dmaengine driver, and i.mx ssi driver is working with the generic dmaengine api. -- Regards, Shawn