aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r--arch/arm/mach-shmobile/board-marzen.c14
-rw-r--r--arch/arm/mach-shmobile/setup-r8a7779.c10
2 files changed, 11 insertions, 13 deletions
diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c
index 43a77d912b4c..cbd5e4cd06d2 100644
--- a/arch/arm/mach-shmobile/board-marzen.c
+++ b/arch/arm/mach-shmobile/board-marzen.c
@@ -33,7 +33,6 @@
33#include <mach/common.h> 33#include <mach/common.h>
34#include <asm/mach-types.h> 34#include <asm/mach-types.h>
35#include <asm/mach/arch.h> 35#include <asm/mach/arch.h>
36#include <asm/mach/time.h>
37#include <asm/hardware/gic.h> 36#include <asm/hardware/gic.h>
38#include <asm/traps.h> 37#include <asm/traps.h>
39 38
@@ -91,17 +90,6 @@ static void __init marzen_init(void)
91 platform_add_devices(marzen_devices, ARRAY_SIZE(marzen_devices)); 90 platform_add_devices(marzen_devices, ARRAY_SIZE(marzen_devices));
92} 91}
93 92
94static void __init marzen_timer_init(void)
95{
96 r8a7779_clock_init();
97 shmobile_timer.init();
98 return;
99}
100
101struct sys_timer marzen_timer = {
102 .init = marzen_timer_init,
103};
104
105MACHINE_START(MARZEN, "marzen") 93MACHINE_START(MARZEN, "marzen")
106 .map_io = r8a7779_map_io, 94 .map_io = r8a7779_map_io,
107 .init_early = r8a7779_add_early_devices, 95 .init_early = r8a7779_add_early_devices,
@@ -109,5 +97,5 @@ MACHINE_START(MARZEN, "marzen")
109 .init_irq = r8a7779_init_irq, 97 .init_irq = r8a7779_init_irq,
110 .handle_irq = gic_handle_irq, 98 .handle_irq = gic_handle_irq,
111 .init_machine = marzen_init, 99 .init_machine = marzen_init,
112 .timer = &marzen_timer, 100 .timer = &shmobile_timer,
113MACHINE_END 101MACHINE_END
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c
index 9bb133c2a932..ce57d90c4bbc 100644
--- a/arch/arm/mach-shmobile/setup-r8a7779.c
+++ b/arch/arm/mach-shmobile/setup-r8a7779.c
@@ -33,6 +33,7 @@
33#include <mach/common.h> 33#include <mach/common.h>
34#include <asm/mach-types.h> 34#include <asm/mach-types.h>
35#include <asm/mach/arch.h> 35#include <asm/mach/arch.h>
36#include <asm/mach/time.h>
36#include <asm/mach/map.h> 37#include <asm/mach/map.h>
37#include <asm/hardware/cache-l2x0.h> 38#include <asm/hardware/cache-l2x0.h>
38 39
@@ -260,6 +261,12 @@ void __init r8a7779_add_standard_devices(void)
260 ARRAY_SIZE(r8a7779_late_devices)); 261 ARRAY_SIZE(r8a7779_late_devices));
261} 262}
262 263
264static void __init r8a7779_earlytimer_init(void)
265{
266 r8a7779_clock_init();
267 shmobile_earlytimer_init();
268}
269
263void __init r8a7779_add_early_devices(void) 270void __init r8a7779_add_early_devices(void)
264{ 271{
265 early_platform_add_devices(r8a7779_early_devices, 272 early_platform_add_devices(r8a7779_early_devices,
@@ -280,4 +287,7 @@ void __init r8a7779_add_early_devices(void)
280 * As a final step pass earlyprint=sh-sci.2,115200 on the kernel 287 * As a final step pass earlyprint=sh-sci.2,115200 on the kernel
281 * command line in case of the marzen board. 288 * command line in case of the marzen board.
282 */ 289 */
290
291 /* override timer setup with soc-specific code */
292 shmobile_timer.init = r8a7779_earlytimer_init;
283} 293}