On 11/29/2011 10:20 AM, Timur Tabi wrote:
> Timur Tabi wrote:
> 
>> If I move the "fsl,eloplus-dma" into mpc85xx_common_ids[], then everything 
>> works.
>>
>> I suspect there's some kind of state machine in of_platform_bus_probe() that 
>> allows it to find the DMA channel nodes if it's scanned everything else 
>> first.  I'm trying to debug it now.

Probably mpc85xx_common_ids[] can probe the soc node but not the dma
node, and the p1022-specific list can probe the dma node but not the soc
node, so it doesn't get to the dma node.

> So why do we need mpc85xx_common_ids[] at all?  Why can't 
> of_platform_bus_probe() just scan the entire tree?

That would generate a lot of useless platform devices that are either
not really devices, or duplicate a device sitting on another bus (i2c,
pci, etc).  It could also result in a device being probed and matching a
driver, when the device is unavailable in a way that is more complicated
than status = "disabled" (such as p1022 muxing), or otherwise requires
special handling.

-Scott

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to