summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2014-04-28 17:08:37 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2014-05-04 11:35:29 +0100
commite715eb2e73918f4cefbba0b717ff8902e8030b39 (patch)
tree1ba12613872342de5ca7882901eec539c1477366
parent7a8d1ec16dfbb7785e82ccc97b0076cc34911701 (diff)
downloadlinux-e715eb2e73918f4cefbba0b717ff8902e8030b39.tar.gz
linux-e715eb2e73918f4cefbba0b717ff8902e8030b39.tar.xz
vexpress: Initialise the sysregs before setting up the clocks
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>
-rw-r--r--drivers/clk/versatile/clk-vexpress-osc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/clk/versatile/clk-vexpress-osc.c b/drivers/clk/versatile/clk-vexpress-osc.c
index a535c7b..4223912 100644
--- a/drivers/clk/versatile/clk-vexpress-osc.c
+++ b/drivers/clk/versatile/clk-vexpress-osc.c
@@ -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;