aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c64xx
diff options
context:
space:
mode:
authorKukjin Kim <kgene.kim@samsung.com>2012-01-03 08:03:30 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-05 07:57:18 -0500
commitff84ded26525adb4c0dcef3a4d590b0d08967293 (patch)
tree658f1cd803067b7a13a536ddb864580c4dd8140a /arch/arm/mach-s3c64xx
parentb27b072791dc83324f180007b03ac0b5a8455a2d (diff)
ARM: 7266/1: restart: S3C64XX: 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-s3c64xx')
-rw-r--r--arch/arm/mach-s3c64xx/common.c10
-rw-r--r--arch/arm/mach-s3c64xx/common.h2
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/system.h7
-rw-r--r--arch/arm/mach-s3c64xx/mach-anw6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-hmt.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-mini6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-ncp.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-real6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq5.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq7.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6400.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6410.c1
13 files changed, 22 insertions, 7 deletions
diff --git a/arch/arm/mach-s3c64xx/common.c b/arch/arm/mach-s3c64xx/common.c
index 8ae5b16cc4f5..35182ba049da 100644
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@ -44,6 +44,7 @@
44#include <plat/irq-vic-timer.h> 44#include <plat/irq-vic-timer.h>
45#include <plat/regs-irqtype.h> 45#include <plat/regs-irqtype.h>
46#include <plat/regs-serial.h> 46#include <plat/regs-serial.h>
47#include <plat/watchdog-reset.h>
47 48
48#include "common.h" 49#include "common.h"
49 50
@@ -373,3 +374,12 @@ static int __init s3c64xx_init_irq_eint(void)
373 return 0; 374 return 0;
374} 375}
375arch_initcall(s3c64xx_init_irq_eint); 376arch_initcall(s3c64xx_init_irq_eint);
377
378void s3c64xx_restart(char mode, const char *cmd)
379{
380 if (mode != 's')
381 arch_wdt_reset();
382
383 /* if all else fails, or mode was for soft, jump to 0 */
384 soft_restart(0);
385}
diff --git a/arch/arm/mach-s3c64xx/common.h b/arch/arm/mach-s3c64xx/common.h
index 9f523a273274..8dc8ab6d8d6d 100644
--- a/arch/arm/mach-s3c64xx/common.h
+++ b/arch/arm/mach-s3c64xx/common.h
@@ -23,6 +23,8 @@ void s3c64xx_init_io(struct map_desc *mach_desc, int size);
23void s3c64xx_register_clocks(unsigned long xtal, unsigned armclk_limit); 23void s3c64xx_register_clocks(unsigned long xtal, unsigned armclk_limit);
24void s3c64xx_setup_clocks(void); 24void s3c64xx_setup_clocks(void);
25 25
26void s3c64xx_restart(char mode, const char *cmd);
27
26extern struct syscore_ops s3c64xx_irq_syscore_ops; 28extern struct syscore_ops s3c64xx_irq_syscore_ops;
27extern struct sysdev_class s3c64xx_sysclass; 29extern struct sysdev_class s3c64xx_sysclass;
28 30
diff --git a/arch/arm/mach-s3c64xx/include/mach/system.h b/arch/arm/mach-s3c64xx/include/mach/system.h
index d8ca5786ba25..51bc8eb046de 100644
--- a/arch/arm/mach-s3c64xx/include/mach/system.h
+++ b/arch/arm/mach-s3c64xx/include/mach/system.h
@@ -11,8 +11,6 @@
11#ifndef __ASM_ARCH_SYSTEM_H 11#ifndef __ASM_ARCH_SYSTEM_H
12#define __ASM_ARCH_SYSTEM_H __FILE__ 12#define __ASM_ARCH_SYSTEM_H __FILE__
13 13
14#include <plat/watchdog-reset.h>
15
16static void arch_idle(void) 14static void arch_idle(void)
17{ 15{
18 /* nothing here yet */ 16 /* nothing here yet */
@@ -20,11 +18,6 @@ static void arch_idle(void)
20 18
21static void arch_reset(char mode, const char *cmd) 19static void arch_reset(char mode, const char *cmd)
22{ 20{
23 if (mode != 's')
24 arch_wdt_reset();
25
26 /* if all else fails, or mode was for soft, jump to 0 */
27 soft_restart(0);
28} 21}
29 22
30#endif /* __ASM_ARCH_IRQ_H */ 23#endif /* __ASM_ARCH_IRQ_H */
diff --git a/arch/arm/mach-s3c64xx/mach-anw6410.c b/arch/arm/mach-s3c64xx/mach-anw6410.c
index 4949bcd554b7..a2ea6e5ee465 100644
--- a/arch/arm/mach-s3c64xx/mach-anw6410.c
+++ b/arch/arm/mach-s3c64xx/mach-anw6410.c
@@ -240,4 +240,5 @@ MACHINE_START(ANW6410, "A&W6410")
240 .map_io = anw6410_map_io, 240 .map_io = anw6410_map_io,
241 .init_machine = anw6410_machine_init, 241 .init_machine = anw6410_machine_init,
242 .timer = &s3c24xx_timer, 242 .timer = &s3c24xx_timer,
243 .restart = s3c64xx_restart,
243MACHINE_END 244MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index 954a44e0c32a..3615d83d7b5a 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -715,4 +715,5 @@ MACHINE_START(WLF_CRAGG_6410, "Wolfson Cragganmore 6410")
715 .map_io = crag6410_map_io, 715 .map_io = crag6410_map_io,
716 .init_machine = crag6410_machine_init, 716 .init_machine = crag6410_machine_init,
717 .timer = &s3c24xx_timer, 717 .timer = &s3c24xx_timer,
718 .restart = s3c64xx_restart,
718MACHINE_END 719MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-hmt.c b/arch/arm/mach-s3c64xx/mach-hmt.c
index b6231d5b9158..8707bee2f0d8 100644
--- a/arch/arm/mach-s3c64xx/mach-hmt.c
+++ b/arch/arm/mach-s3c64xx/mach-hmt.c
@@ -271,4 +271,5 @@ MACHINE_START(HMT, "Airgoo-HMT")
271 .map_io = hmt_map_io, 271 .map_io = hmt_map_io,
272 .init_machine = hmt_machine_init, 272 .init_machine = hmt_machine_init,
273 .timer = &s3c24xx_timer, 273 .timer = &s3c24xx_timer,
274 .restart = s3c64xx_restart,
274MACHINE_END 275MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-mini6410.c b/arch/arm/mach-s3c64xx/mach-mini6410.c
index ed02e7eebb97..4fba2328a04b 100644
--- a/arch/arm/mach-s3c64xx/mach-mini6410.c
+++ b/arch/arm/mach-s3c64xx/mach-mini6410.c
@@ -349,4 +349,5 @@ MACHINE_START(MINI6410, "MINI6410")
349 .map_io = mini6410_map_io, 349 .map_io = mini6410_map_io,
350 .init_machine = mini6410_machine_init, 350 .init_machine = mini6410_machine_init,
351 .timer = &s3c24xx_timer, 351 .timer = &s3c24xx_timer,
352 .restart = s3c64xx_restart,
352MACHINE_END 353MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-ncp.c b/arch/arm/mach-s3c64xx/mach-ncp.c
index 3e2391a98570..9ec4d5710733 100644
--- a/arch/arm/mach-s3c64xx/mach-ncp.c
+++ b/arch/arm/mach-s3c64xx/mach-ncp.c
@@ -103,4 +103,5 @@ MACHINE_START(NCP, "NCP")
103 .map_io = ncp_map_io, 103 .map_io = ncp_map_io,
104 .init_machine = ncp_machine_init, 104 .init_machine = ncp_machine_init,
105 .timer = &s3c24xx_timer, 105 .timer = &s3c24xx_timer,
106 .restart = s3c64xx_restart,
106MACHINE_END 107MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-real6410.c b/arch/arm/mach-s3c64xx/mach-real6410.c
index 045614367f7f..0cb7116d7b59 100644
--- a/arch/arm/mach-s3c64xx/mach-real6410.c
+++ b/arch/arm/mach-s3c64xx/mach-real6410.c
@@ -330,4 +330,5 @@ MACHINE_START(REAL6410, "REAL6410")
330 .map_io = real6410_map_io, 330 .map_io = real6410_map_io,
331 .init_machine = real6410_machine_init, 331 .init_machine = real6410_machine_init,
332 .timer = &s3c24xx_timer, 332 .timer = &s3c24xx_timer,
333 .restart = s3c64xx_restart,
333MACHINE_END 334MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq5.c b/arch/arm/mach-s3c64xx/mach-smartq5.c
index 2044a9f2e421..f1f57bd5ce1c 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq5.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq5.c
@@ -151,4 +151,5 @@ MACHINE_START(SMARTQ5, "SmartQ 5")
151 .map_io = smartq_map_io, 151 .map_io = smartq_map_io,
152 .init_machine = smartq5_machine_init, 152 .init_machine = smartq5_machine_init,
153 .timer = &s3c24xx_timer, 153 .timer = &s3c24xx_timer,
154 .restart = s3c64xx_restart,
154MACHINE_END 155MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq7.c b/arch/arm/mach-s3c64xx/mach-smartq7.c
index eaf24a35097b..63117d84182e 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq7.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq7.c
@@ -167,4 +167,5 @@ MACHINE_START(SMARTQ7, "SmartQ 7")
167 .map_io = smartq_map_io, 167 .map_io = smartq_map_io,
168 .init_machine = smartq7_machine_init, 168 .init_machine = smartq7_machine_init,
169 .timer = &s3c24xx_timer, 169 .timer = &s3c24xx_timer,
170 .restart = s3c64xx_restart,
170MACHINE_END 171MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6400.c b/arch/arm/mach-s3c64xx/mach-smdk6400.c
index bda5e0b26c5a..64375d7dda5d 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6400.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6400.c
@@ -92,4 +92,5 @@ MACHINE_START(SMDK6400, "SMDK6400")
92 .map_io = smdk6400_map_io, 92 .map_io = smdk6400_map_io,
93 .init_machine = smdk6400_machine_init, 93 .init_machine = smdk6400_machine_init,
94 .timer = &s3c24xx_timer, 94 .timer = &s3c24xx_timer,
95 .restart = s3c64xx_restart,
95MACHINE_END 96MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6410.c b/arch/arm/mach-s3c64xx/mach-smdk6410.c
index 91087da9d7c2..f239b0a53a6f 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6410.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c
@@ -704,4 +704,5 @@ MACHINE_START(SMDK6410, "SMDK6410")
704 .map_io = smdk6410_map_io, 704 .map_io = smdk6410_map_io,
705 .init_machine = smdk6410_machine_init, 705 .init_machine = smdk6410_machine_init,
706 .timer = &s3c24xx_timer, 706 .timer = &s3c24xx_timer,
707 .restart = s3c64xx_restart,
707MACHINE_END 708MACHINE_END