On Wed, 8 Jan 2014 11:28:01 -0600, Rob Herring <robherring2@xxxxxxxxx> wrote: > On Mon, Dec 23, 2013 at 10:23 AM, Pawel Moll <pawel.moll@xxxxxxx> wrote: > > In "Device Tree powered" systems, platform devices are usually > > massively populated with of_platform_populate() call, executed > > at some level of initcalls, either by generic architecture > > or by platform-specific code. > > > > There are situations though where certain devices must be > > created (and bound with drivers) before all the others. > > This presents small challenge in DT-driven systems, as > > devices explicitly created in early code would be created > > again by of_platform_populate(). > > Isn't this already at least partially solved with the aux data > support? I'm guessing the difference here is how the early device is > created. Still, creating a device early and then trying to remember that it has been done does nothing but add complexity for a very small number of use cases. I still would much rather see things that need really early setup to avoid the device model entirely and do the bare minimum needed to allow the kernel to get to initcall time. In the cases where a subsystem API requires a struct device, I would consider using a dummy throwaway struct device for the early bits. g. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html