Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41ac329f authored by Rabin Vincent's avatar Rabin Vincent Committed by Russell King
Browse files

ARM: 6087/1: ux500: move sys_timer to cpu.c



Move the common system timer setup code to cpu.c.

Acked-by: default avatarLinus Walleij <linus.walleij@stericsson.com>
Acked-by: default avatarSrinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: default avatarRabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 5b1f7ddf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -145,6 +145,6 @@ MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
	.map_io		= u8500_map_io,
	.init_irq	= ux500_init_irq,
	/* we re-use nomadik timer here */
	.timer		= &u8500_timer,
	.timer		= &ux500_timer,
	.init_machine	= u8500_init_machine,
MACHINE_END
+0 −21
Original line number Diff line number Diff line
@@ -17,9 +17,7 @@
#include <linux/platform_device.h>
#include <linux/io.h>

#include <asm/localtimer.h>
#include <asm/mach/map.h>
#include <plat/mtu.h>
#include <mach/hardware.h>
#include <mach/setup.h>
#include <mach/devices.h>
@@ -78,22 +76,3 @@ 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 */
	if (cpu_is_u8500ed())
		mtu_base = __io_address(U8500_MTU0_BASE_ED);
	else
		mtu_base = __io_address(U8500_MTU0_BASE);

	nmdk_timer_init();
}

struct sys_timer u8500_timer = {
	.init	= u8500_timer_init,
};
+21 −0
Original line number Diff line number Diff line
@@ -13,7 +13,9 @@
#include <asm/hardware/cache-l2x0.h>
#include <asm/hardware/gic.h>
#include <asm/mach/map.h>
#include <asm/localtimer.h>

#include <plat/mtu.h>
#include <mach/hardware.h>
#include <mach/setup.h>
#include <mach/devices.h>
@@ -76,3 +78,22 @@ static int ux500_l2x0_init(void)
}
early_initcall(ux500_l2x0_init);
#endif

static void __init ux500_timer_init(void)
{
#ifdef CONFIG_LOCAL_TIMERS
	/* Setup the local timer base */
	twd_base = __io_address(UX500_TWD_BASE);
#endif
	/* Setup the MTU base */
	if (cpu_is_u8500ed())
		mtu_base = __io_address(U8500_MTU0_BASE_ED);
	else
		mtu_base = __io_address(UX500_MTU0_BASE);

	nmdk_timer_init();
}

struct sys_timer ux500_timer = {
	.init	= ux500_timer_init,
};
+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ extern void nmdk_timer_init(void);
extern void __init amba_add_devices(struct amba_device *devs[], int num);

struct sys_timer;
extern struct sys_timer u8500_timer;
extern struct sys_timer ux500_timer;

#define __IO_DEV_DESC(x, sz)	{		\
	.virtual	= IO_ADDRESS(x),	\