summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s5pc100
diff options
context:
space:
mode:
authorKukjin Kim <kgene.kim@samsung.com>2011-12-22 23:35:21 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-05 12:57:19 +0000
commit5497d2e1d63bfdd707d4b19651c4127545ccd135 (patch)
tree56fac6bd7f87aa06afd4f1f9c8532d2cd943c73d /arch/arm/mach-s5pc100
parent73aed8b9493f98edaabe4395c4043c4d3bccf7e1 (diff)
downloadlinux-5497d2e1d63bfdd707d4b19651c4127545ccd135.tar.gz
linux-5497d2e1d63bfdd707d4b19651c4127545ccd135.tar.bz2
linux-5497d2e1d63bfdd707d4b19651c4127545ccd135.zip
ARM: 7251/1: restart: S5PC100: use new restart hook
Hook these platforms restart code into the new restart hook rather than using arch_reset(). Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-s5pc100')
-rw-r--r--arch/arm/mach-s5pc100/common.c9
-rw-r--r--arch/arm/mach-s5pc100/common.h2
-rw-r--r--arch/arm/mach-s5pc100/mach-smdkc100.c1
3 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-s5pc100/common.c b/arch/arm/mach-s5pc100/common.c
index e6eadacc108c..73594a2fcf26 100644
--- a/arch/arm/mach-s5pc100/common.c
+++ b/arch/arm/mach-s5pc100/common.c
@@ -45,6 +45,7 @@
#include <plat/iic-core.h>
#include <plat/onenand-core.h>
#include <plat/regs-serial.h>
+#include <plat/watchdog-reset.h>
#include "common.h"
@@ -221,3 +222,11 @@ void __init s5pc100_init_uarts(struct s3c2410_uartcfg *cfg, int no)
{
s3c24xx_init_uartdevs("s3c6400-uart", s5p_uart_resources, cfg, no);
}
+
+void s5pc100_restart(char mode, const char *cmd)
+{
+ if (mode != 's')
+ arch_wdt_reset();
+
+ soft_restart(0);
+}
diff --git a/arch/arm/mach-s5pc100/common.h b/arch/arm/mach-s5pc100/common.h
index 4822b872a468..9fbd3ae2b401 100644
--- a/arch/arm/mach-s5pc100/common.h
+++ b/arch/arm/mach-s5pc100/common.h
@@ -18,6 +18,8 @@ void s5pc100_init_irq(void);
void s5pc100_register_clocks(void);
void s5pc100_setup_clocks(void);
+void s5pc100_restart(char mode, const char *cmd);
+
#ifdef CONFIG_CPU_S5PC100
extern int s5pc100_init(void);
diff --git a/arch/arm/mach-s5pc100/mach-smdkc100.c b/arch/arm/mach-s5pc100/mach-smdkc100.c
index e1c41772c7bd..ead292ce1e0d 100644
--- a/arch/arm/mach-s5pc100/mach-smdkc100.c
+++ b/arch/arm/mach-s5pc100/mach-smdkc100.c
@@ -254,4 +254,5 @@ MACHINE_START(SMDKC100, "SMDKC100")
.map_io = smdkc100_map_io,
.init_machine = smdkc100_machine_init,
.timer = &s3c24xx_timer,
+ .restart = s5pc100_restart,
MACHINE_END