On Sat, Jul 16, 2011 at 10:38:11PM +0800, Tabi Timur-B04825 wrote: > Shawn Guo wrote: > > It's not about virtual or physical channel. I'm asking suggestion on > > how we bind the channel number for each dma client device in device > > tree and how they will get the number from device tree when they get > > probed. > > I guess I'm still confused. Why do we need to bind the channel number? > It's just a resource that can be owned by the driver without needing a > device tree.
I should have said it's about how we bind sdma event number for each client device and how the client device drivers retrieve the number from device tree. To be clear, the sdma event number is a sdma client device specific resource, which is defined by soc. You may ask why this virtual number matters, since physical channel number is dynamically assigned to the client device. It's related to sdma hardware design. sdma is a custom RISC core with SRAM inside. It executes firmware to move data between peripheral and system memory. The sdma event number is actually used to identify the peripheral by sdma core and firmware. So whenever a peripheral (sdma client device) requests sdma service, it has to tell sdma its event number to let sdma identify it. For existing non-dt case, the sdma event number is being passed into sdma client device driver by platform code as resource of IORESOURCE_DMA. But the approach is not working for dt case. -- Regards, Shawn _______________________________________________ devicetree-discuss mailing list [email protected] https://lists.ozlabs.org/listinfo/devicetree-discuss
