vexpress: Initialise the sysregs before setting up the clocks
authorCatalin Marinas <catalin.marinas@arm.com>
Mon, 28 Apr 2014 16:08:37 +0000 (17:08 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Sun, 4 May 2014 10:35:29 +0000 (11:35 +0100)
Following arm64 commit bc3ee18a7a57 (arm64: init: Move of_clk_init to
time_init()), vexpress_osc_of_setup() is called via of_clk_init() long
before initcalls are issued. Initialising the vexpress oscillators
requires the vespress sysregs to be already initialised, so this patch
adds an explicit call to vexpress_sysreg_of_early_init() in vexpress
oscillator setup function.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Will Deacon <will.deacon@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Acked-by: Pawel Moll <pawel.moll@arm.com>
Cc: Mike Turquette <mturquette@linaro.org>
drivers/clk/versatile/clk-vexpress-osc.c

index a535c7bf85745144a99d86ff86fc27c0399ff8ab..422391242b39ceac4a322ee532288ee46b6eba32 100644 (file)
@@ -100,6 +100,8 @@ void __init vexpress_osc_of_setup(struct device_node *node)
        struct clk *clk;
        u32 range[2];
 
+       vexpress_sysreg_of_early_init();
+
        osc = kzalloc(sizeof(*osc), GFP_KERNEL);
        if (!osc)
                return;