On 08/23/13 12:06, Gregory CLEMENT wrote: > On 20/08/2013 04:04, Sebastian Hesselbarth wrote: >> With arch/arm calling of_clk_init(NULL) from time_init(), we can now >> remove custom .init_time hooks. > > As a feared it won't work on Armada XP. You moved coherency_init(), and > l2x0_of_init() in the init_machine hook. However init_machine is an > arch_initcall, and as all the initcall it is called at the end of the > do_basic_setup() which is called after smp_prepare_cpus(). The issue is > that smp_prepare_cpus need coherency (and I think L2 cache) already enable. Ok, I see. I remember mvebu smp relies on mbus mappings also? Can you try below as replacement for the mach-mvebu/armada-370-xp.c changes? It will move coherency_init(), l2x0_of_init(), and mvebu_mbus_dt_init() to .init_early hook. Sebastian -------------- next part -------------- A non-text attachment was scrubbed... Name: arm-of_clk_init-mvebu-proposal.diff Type: text/x-patch Size: 1292 bytes Desc: not available URL: