Thread (1 message) 1 message, 1 author, 2016-08-14

Re: [PATCH] powerpc: populate the default bus with machine_arch_initcall

From: Rob Herring <robh@kernel.org>
Date: 2016-08-14 22:42:43
Also in: linux-devicetree

On Sun, Aug 14, 2016 at 4:21 PM, Benjamin Herrenschmidt
[off-list ref] wrote:
On Fri, 2016-08-12 at 14:30 -0500, Rob Herring wrote:
quoted
quoted
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. But a lot of ppc boards use machine_device_initcall() to
populate the default bus. This means that the default populate
function
has higher priority and would override the arch specific population
of
the bus. The side effect is that some arch specific bus are not
probed,
then cause various malfunction due to the miss of some devices.
Since
it is very possible to introduce bugs if we simply change the
initcall
level for all these boards(about 30+). This just disable this
default
function for all the ppc boards.

Signed-off-by: Kevin Hao <redacted>
---
 drivers/of/platform.c | 2 ++
 1 file changed, 2 insertions(+)
I've applied this one.
Not fan of the hard #ifdef at all... it will make it hard to convert
platforms one by one. Why not an arch_want_default_of_probe() or
something like this which we can then plumb into ppc_md. ?
Yeah, I'm not either really. I didn't propose using IS_ENABLED here
either as it does add a needless initcall.

Do you have any idea which platforms are not broken and could be
switched over now. If not, I think we should just leave as is for 4.8
and make it per platform selectable for 4.9.

Rob
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help