diff options
-rw-r--r-- | arch/arm/mach-s5p64x0/common.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-s5p64x0/common.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-s5p64x0/mach-smdk6440.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-s5p64x0/mach-smdk6450.c | 1 |
4 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/mach-s5p64x0/common.c b/arch/arm/mach-s5p64x0/common.c index af02dc34769d..b7555a0fb0fb 100644 --- a/arch/arm/mach-s5p64x0/common.c +++ b/arch/arm/mach-s5p64x0/common.c | |||
@@ -45,6 +45,7 @@ | |||
45 | #include <plat/gpio-cfg.h> | 45 | #include <plat/gpio-cfg.h> |
46 | #include <plat/regs-irqtype.h> | 46 | #include <plat/regs-irqtype.h> |
47 | #include <plat/regs-serial.h> | 47 | #include <plat/regs-serial.h> |
48 | #include <plat/watchdog-reset.h> | ||
48 | 49 | ||
49 | #include "common.h" | 50 | #include "common.h" |
50 | 51 | ||
@@ -457,3 +458,11 @@ static int __init s5p64x0_init_irq_eint(void) | |||
457 | return ret; | 458 | return ret; |
458 | } | 459 | } |
459 | arch_initcall(s5p64x0_init_irq_eint); | 460 | arch_initcall(s5p64x0_init_irq_eint); |
461 | |||
462 | void s5p64x0_restart(char mode, const char *cmd) | ||
463 | { | ||
464 | if (mode != 's') | ||
465 | arch_wdt_reset(); | ||
466 | |||
467 | soft_restart(0); | ||
468 | } | ||
diff --git a/arch/arm/mach-s5p64x0/common.h b/arch/arm/mach-s5p64x0/common.h index 8a1eca5f4ec9..f8a60fdc5884 100644 --- a/arch/arm/mach-s5p64x0/common.h +++ b/arch/arm/mach-s5p64x0/common.h | |||
@@ -22,6 +22,8 @@ void s5p6440_setup_clocks(void); | |||
22 | void s5p6450_register_clocks(void); | 22 | void s5p6450_register_clocks(void); |
23 | void s5p6450_setup_clocks(void); | 23 | void s5p6450_setup_clocks(void); |
24 | 24 | ||
25 | void s5p64x0_restart(char mode, const char *cmd); | ||
26 | |||
25 | #ifdef CONFIG_CPU_S5P6440 | 27 | #ifdef CONFIG_CPU_S5P6440 |
26 | 28 | ||
27 | extern int s5p64x0_init(void); | 29 | extern int s5p64x0_init(void); |
diff --git a/arch/arm/mach-s5p64x0/mach-smdk6440.c b/arch/arm/mach-s5p64x0/mach-smdk6440.c index 646fc995a109..14ace6d282e6 100644 --- a/arch/arm/mach-s5p64x0/mach-smdk6440.c +++ b/arch/arm/mach-s5p64x0/mach-smdk6440.c | |||
@@ -246,4 +246,5 @@ MACHINE_START(SMDK6440, "SMDK6440") | |||
246 | .map_io = smdk6440_map_io, | 246 | .map_io = smdk6440_map_io, |
247 | .init_machine = smdk6440_machine_init, | 247 | .init_machine = smdk6440_machine_init, |
248 | .timer = &s5p_timer, | 248 | .timer = &s5p_timer, |
249 | .restart = s5p64x0_restart, | ||
249 | MACHINE_END | 250 | MACHINE_END |
diff --git a/arch/arm/mach-s5p64x0/mach-smdk6450.c b/arch/arm/mach-s5p64x0/mach-smdk6450.c index 90463ddcbe39..924478a19b9a 100644 --- a/arch/arm/mach-s5p64x0/mach-smdk6450.c +++ b/arch/arm/mach-s5p64x0/mach-smdk6450.c | |||
@@ -266,4 +266,5 @@ MACHINE_START(SMDK6450, "SMDK6450") | |||
266 | .map_io = smdk6450_map_io, | 266 | .map_io = smdk6450_map_io, |
267 | .init_machine = smdk6450_machine_init, | 267 | .init_machine = smdk6450_machine_init, |
268 | .timer = &s5p_timer, | 268 | .timer = &s5p_timer, |
269 | .restart = s5p64x0_restart, | ||
269 | MACHINE_END | 270 | MACHINE_END |