diff options
Diffstat (limited to 'arch/arm/mach-prima2/common.c')
| -rw-r--r-- | arch/arm/mach-prima2/common.c | 14 | 
1 files changed, 11 insertions, 3 deletions
| diff --git a/arch/arm/mach-prima2/common.c b/arch/arm/mach-prima2/common.c index 31f43eac142..4f94cd87972 100644 --- a/arch/arm/mach-prima2/common.c +++ b/arch/arm/mach-prima2/common.c @@ -6,6 +6,7 @@   * Licensed under GPLv2 or later.   */ +#include <linux/clocksource.h>  #include <linux/init.h>  #include <linux/kernel.h>  #include <linux/irqchip.h> @@ -31,6 +32,13 @@ void __init sirfsoc_init_late(void)  	sirfsoc_pm_init();  } +static __init void sirfsoc_init_time(void) +{ +	/* initialize clocking early, we want to set the OS timer */ +	sirfsoc_of_clk_init(); +	clocksource_of_init(); +} +  static __init void sirfsoc_map_io(void)  {  	sirfsoc_map_lluart(); @@ -48,7 +56,7 @@ DT_MACHINE_START(ATLAS6_DT, "Generic ATLAS6 (Flattened Device Tree)")  	.nr_irqs	= 128,  	.map_io         = sirfsoc_map_io,  	.init_irq	= irqchip_init, -	.init_time	= sirfsoc_prima2_timer_init, +	.init_time	= sirfsoc_init_time,  	.init_machine	= sirfsoc_mach_init,  	.init_late	= sirfsoc_init_late,  	.dt_compat      = atlas6_dt_match, @@ -67,7 +75,7 @@ DT_MACHINE_START(PRIMA2_DT, "Generic PRIMA2 (Flattened Device Tree)")  	.nr_irqs	= 128,  	.map_io         = sirfsoc_map_io,  	.init_irq	= irqchip_init, -	.init_time	= sirfsoc_prima2_timer_init, +	.init_time	= sirfsoc_init_time,  	.dma_zone_size	= SZ_256M,  	.init_machine	= sirfsoc_mach_init,  	.init_late	= sirfsoc_init_late, @@ -87,7 +95,7 @@ DT_MACHINE_START(MARCO_DT, "Generic MARCO (Flattened Device Tree)")  	.smp            = smp_ops(sirfsoc_smp_ops),  	.map_io         = sirfsoc_map_io,  	.init_irq	= irqchip_init, -	.init_time	= sirfsoc_marco_timer_init, +	.init_time	= sirfsoc_init_time,  	.init_machine	= sirfsoc_mach_init,  	.init_late	= sirfsoc_init_late,  	.dt_compat      = marco_dt_match, |