diff options
Diffstat (limited to 'arch/arm/mach-ux500/cpu-u8500.c')
-rw-r--r-- | arch/arm/mach-ux500/cpu-u8500.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-ux500/cpu-u8500.c b/arch/arm/mach-ux500/cpu-u8500.c index 397bc1f9ed94..588b0596a635 100644 --- a/arch/arm/mach-ux500/cpu-u8500.c +++ b/arch/arm/mach-ux500/cpu-u8500.c @@ -14,10 +14,14 @@ #include <linux/amba/bus.h> #include <linux/irq.h> #include <linux/platform_device.h> +#include <linux/io.h> +#include <asm/localtimer.h> #include <asm/hardware/gic.h> #include <asm/mach/map.h> +#include <plat/mtu.h> #include <mach/hardware.h> +#include <mach/setup.h> /* add any platform devices here - TODO */ static struct platform_device *platform_devs[] __initdata = { @@ -63,3 +67,19 @@ void __init u8500_init_devices(void) return ; } + +static void __init u8500_timer_init(void) +{ +#ifdef CONFIG_LOCAL_TIMERS + /* Setup the local timer base */ + twd_base = __io_address(U8500_TWD_BASE); +#endif + /* Setup the MTU base */ + mtu_base = __io_address(U8500_MTU0_BASE); + + nmdk_timer_init(); +} + +struct sys_timer u8500_timer = { + .init = u8500_timer_init, +}; |