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

Re: Is there a binding for IORESOURCE_DMA population?

From: Tabi Timur-B04825 <hidden>
Date: 2011-07-16 20:54:21

Arnd Bergmann wrote:
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.
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.

-- 
Timur Tabi
Linux kernel developer at Freescale
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help