Thread (1 message) 1 message, 1 author, 2011-07-17

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help