On Thu, Aug 11, 2016 at 6:09 AM, Kevin Hao <haoke...@gmail.com> wrote: > With the commit 44a7185c2ae6 ("of/platform: Add common method to > populate default bus"), a default function is introduced to populate > the default bus and this function is invoked at the arch_initcall_sync > level. This will override the arch specific population of default bus > which run at a lower level than arch_initcall_sync. Since not all > powerpc specific buses are added to the of_default_bus_match_table[], > this causes some powerpc specific bus are not probed. Fix this by > using a more preceding initcall. > > Signed-off-by: Kevin Hao <haoke...@gmail.com> > --- > Of course we can adjust the powerpc arch codes to use the > of_platform_default_populate_init(), but it has high risk to break > other boards given the complicated powerpc specific buses. So I would > like just to fix the broken boards in the current release, and cook > a patch to change to of_platform_default_populate_init() for linux-next.
The patch that broke things was sitting in -next for some time and no one reported anything. Are all these boards broken? I'm fine to just disable the default call for PPC instead if there's some chance this does not fix some boards. There could be some other initcall ordering dependencies. > > Only boot test on a mpc8315erdb board. Curious, what would it take to remove the of_platform_bus_probe and use the default here? We can add additional bus compatibles to match. The difference between of_platform_bus_probe and of_platform_bus_populate is the former will match root nodes with no compatible string. Most platforms should not need that behavior and it would be nice to know which ones. Rob