[BISECTED REGRESSION] v4.8-rc: DT/OCTEON driver probing broken

From: Aaro Koskinen
Date: Tue Aug 16 2016 - 21:38:49 EST


Hi,

Commit 44a7185c2ae6 ("of/platform: Add common method to populate default
bus") added new arch_initcall of_platform_default_populate_init() that
will be called before device_initcall octeon_publish_devices(). Now the
of_platform_bus_probe() called in octeon_publish_devices() is apparently
doing nothing:

[ 52.331353] calling octeon_publish_devices+0x0/0x14 @ 1
[ 52.331358] OF: of_platform_bus_probe()
[ 52.331362] OF: starting at: /
[ 52.331378] OF: of_platform_bus_create() - skipping /soc@0, already populated
[ 52.331394] initcall octeon_publish_devices+0x0/0x14 returned 0 after 29 usecs

This also means that USB etc. won't get probed.

Any ideas what would be the proper fix for this? Changing
octeon_publish_devices() to arch_initcall seems to work but that may be
a bit hackish... Also, there might be also other MIPS boards affected
(arch/mips/netlogic/xlp/dt.c, arch/mips/mti-malta/malta-dt.c).

A.