aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-shmobile/board-g3evm.c13
-rw-r--r--arch/arm/mach-shmobile/setup-sh7367.c10
2 files changed, 11 insertions, 12 deletions
diff --git a/arch/arm/mach-shmobile/board-g3evm.c b/arch/arm/mach-shmobile/board-g3evm.c
index 40ddea55fa6e..b627e89037f5 100644
--- a/arch/arm/mach-shmobile/board-g3evm.c
+++ b/arch/arm/mach-shmobile/board-g3evm.c
@@ -37,7 +37,6 @@
37#include <mach/common.h> 37#include <mach/common.h>
38#include <asm/mach-types.h> 38#include <asm/mach-types.h>
39#include <asm/mach/arch.h> 39#include <asm/mach/arch.h>
40#include <asm/mach/time.h>
41 40
42/* 41/*
43 * IrDA 42 * IrDA
@@ -332,21 +331,11 @@ static void __init g3evm_init(void)
332 platform_add_devices(g3evm_devices, ARRAY_SIZE(g3evm_devices)); 331 platform_add_devices(g3evm_devices, ARRAY_SIZE(g3evm_devices));
333} 332}
334 333
335static void __init g3evm_timer_init(void)
336{
337 sh7367_clock_init();
338 shmobile_timer.init();
339}
340
341static struct sys_timer g3evm_timer = {
342 .init = g3evm_timer_init,
343};
344
345MACHINE_START(G3EVM, "g3evm") 334MACHINE_START(G3EVM, "g3evm")
346 .map_io = sh7367_map_io, 335 .map_io = sh7367_map_io,
347 .init_early = sh7367_add_early_devices, 336 .init_early = sh7367_add_early_devices,
348 .init_irq = sh7367_init_irq, 337 .init_irq = sh7367_init_irq,
349 .handle_irq = shmobile_handle_irq_intc, 338 .handle_irq = shmobile_handle_irq_intc,
350 .init_machine = g3evm_init, 339 .init_machine = g3evm_init,
351 .timer = &g3evm_timer, 340 .timer = &shmobile_timer,
352MACHINE_END 341MACHINE_END
diff --git a/arch/arm/mach-shmobile/setup-sh7367.c b/arch/arm/mach-shmobile/setup-sh7367.c
index 7b747aba2046..a51e1a1e6996 100644
--- a/arch/arm/mach-shmobile/setup-sh7367.c
+++ b/arch/arm/mach-shmobile/setup-sh7367.c
@@ -33,6 +33,7 @@
33#include <asm/mach-types.h> 33#include <asm/mach-types.h>
34#include <asm/mach/arch.h> 34#include <asm/mach/arch.h>
35#include <asm/mach/map.h> 35#include <asm/mach/map.h>
36#include <asm/mach/time.h>
36 37
37static struct map_desc sh7367_io_desc[] __initdata = { 38static struct map_desc sh7367_io_desc[] __initdata = {
38 /* create a 1:1 entity map for 0xe6xxxxxx 39 /* create a 1:1 entity map for 0xe6xxxxxx
@@ -454,6 +455,12 @@ void __init sh7367_add_standard_devices(void)
454 ARRAY_SIZE(sh7367_devices)); 455 ARRAY_SIZE(sh7367_devices));
455} 456}
456 457
458static void __init sh7367_earlytimer_init(void)
459{
460 sh7367_clock_init();
461 shmobile_earlytimer_init();
462}
463
457#define SYMSTPCR2 0xe6158048 464#define SYMSTPCR2 0xe6158048
458#define SYMSTPCR2_CMT1 (1 << 29) 465#define SYMSTPCR2_CMT1 (1 << 29)
459 466
@@ -467,4 +474,7 @@ void __init sh7367_add_early_devices(void)
467 474
468 /* setup early console here as well */ 475 /* setup early console here as well */
469 shmobile_setup_console(); 476 shmobile_setup_console();
477
478 /* override timer setup with soc-specific code */
479 shmobile_timer.init = sh7367_earlytimer_init;
470} 480}