diff options
author | James Hogan <james.hogan@imgtec.com> | 2013-01-15 15:27:45 +0000 |
---|---|---|
committer | James Hogan <james.hogan@imgtec.com> | 2013-06-13 12:54:41 +0100 |
commit | caa279dda4d9a442d824cd333e8b72078b83e855 (patch) | |
tree | 609d39ecdf728bc759ab4a3e8775475b1e4636b7 /arch/metag/kernel/time.c | |
parent | c24d2976c7834aa948f9d8a48ad4285cfbaf1c3a (diff) |
metag: init common clk and use "core" clk
If the common clock framework is enabled, call of_clk_init(NULL) in
time_init() to register device tree clocks with the clock framework.
After this time_init() calls a new function init_metag_clocks(), which
looks for a clock named "core" in the node compatible with "img,meta"
(usually the root node). If found the get_core_freq machine callback is
overridden to obtain the core clock frequency using that clock.
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Mike Turquette <mturquette@linaro.org>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: devicetree-discuss@lists.ozlabs.org
Diffstat (limited to 'arch/metag/kernel/time.c')
-rw-r--r-- | arch/metag/kernel/time.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/metag/kernel/time.c b/arch/metag/kernel/time.c index 17dc10733b2f..f1c8c53dace7 100644 --- a/arch/metag/kernel/time.c +++ b/arch/metag/kernel/time.c @@ -5,11 +5,21 @@ * */ -#include <linux/init.h> - #include <clocksource/metag_generic.h> +#include <linux/clk-provider.h> +#include <linux/init.h> +#include <asm/clock.h> void __init time_init(void) { +#ifdef CONFIG_COMMON_CLK + /* Init clocks from device tree */ + of_clk_init(NULL); +#endif + + /* Init meta clocks, particularly the core clock */ + init_metag_clocks(); + + /* Set up the timer clock sources */ metag_generic_timer_init(); } |