On Sat, Feb 28, 2009 at 11:21 AM, Gary Thomas <g...@mlbassoc.com> wrote: > Grant Likely wrote: >> Once you have a handle to the node, you can iterate through the >> of_platform bus devices and look for a node which has a matching node >> pointer stored in archdata. That will give you a struct device which >> is contained by a struct of_device (note well: this will give you an >> of_device, not a platform_device.) > > I have code which does this already, but I could not figure out > how to get from the of_device node to the actual platform_device.
You can't. There is no platform_device. There is only the of_device. The bit that you're missing is that the 'platform bus' isn't being used at all for these devices. The 'of_platform bus' is used instead. platform bus and of_platform bus perform essentially the same job, but the of_platform bus differs in the way it probes drivers. Specifically, an of_platform_driver can be handed a list of values that it will match against, and it has a 1:1 relationship with a node in the device tree. > How do I find the platform_device which was created when this > particular of_device was instantiated? I made sure that this code > is run late - after all the of_devices have been handled. Again, there is no platform_device. of_device *is* the device that was created. g. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev