diff options
Diffstat (limited to 'arch/arm/mach-vexpress/v2m.c')
-rw-r--r-- | arch/arm/mach-vexpress/v2m.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c index 4f8b8cb..95a469e 100644 --- a/arch/arm/mach-vexpress/v2m.c +++ b/arch/arm/mach-vexpress/v2m.c @@ -1,10 +1,12 @@ /* * Versatile Express V2M Motherboard Support */ +#include <linux/clocksource.h> #include <linux/device.h> #include <linux/amba/bus.h> #include <linux/amba/mmci.h> #include <linux/io.h> +#include <linux/clocksource.h> #include <linux/smp.h> #include <linux/init.h> #include <linux/of_address.h> @@ -20,6 +22,7 @@ #include <linux/regulator/fixed.h> #include <linux/regulator/machine.h> #include <linux/vexpress.h> +#include <linux/clk-provider.h> #include <linux/clkdev.h> #include <asm/mach-types.h> @@ -419,8 +422,16 @@ void __init v2m_dt_init_early(void) pr_warning("vexpress: DT HBI (%x) is not matching " "hardware (%x)!\n", dt_hbi, hbi); } +} - versatile_sched_clock_init(vexpress_get_24mhz_clock_base(), 24000000); +static void __init v2m_dt_timer_init(void) +{ + of_clk_init(NULL); + + clocksource_of_init(); + + versatile_sched_clock_init(vexpress_get_24mhz_clock_base(), + 24000000); } static const struct of_device_id v2m_dt_bus_match[] __initconst = { @@ -447,5 +458,6 @@ DT_MACHINE_START(VEXPRESS_DT, "ARM-Versatile Express") .smp_init = smp_init_ops(vexpress_smp_init_ops), .map_io = v2m_dt_map_io, .init_early = v2m_dt_init_early, + .init_time = v2m_dt_timer_init, .init_machine = v2m_dt_init, MACHINE_END |