aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mv78xx0
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-11-05 06:09:15 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-05 07:57:15 -0500
commit9635f9cd49b72bddb7e40fcbc151240677b5cf5e (patch)
treef0de1d54b56c74b775c688adc986d2d1307b8f3a /arch/arm/mach-mv78xx0
parent9854a38e371a153c7c4adb2cb7951c27befe0362 (diff)
ARM: restart: mv78xx0: use new restart hook
Hook these platforms restart code into the new restart hook rather than using arch_reset(). Acked-by: Nicolas pitre <nico@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-mv78xx0')
-rw-r--r--arch/arm/mach-mv78xx0/buffalo-wxl-setup.c1
-rw-r--r--arch/arm/mach-mv78xx0/common.c16
-rw-r--r--arch/arm/mach-mv78xx0/common.h1
-rw-r--r--arch/arm/mach-mv78xx0/db78x00-bp-setup.c1
-rw-r--r--arch/arm/mach-mv78xx0/include/mach/system.h14
-rw-r--r--arch/arm/mach-mv78xx0/rd78x00-masa-setup.c1
6 files changed, 20 insertions, 14 deletions
diff --git a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
index 0e94268d6e6..ee74ec97c14 100644
--- a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
+++ b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
@@ -151,4 +151,5 @@ MACHINE_START(TERASTATION_WXL, "Buffalo Nas WXL")
151 .init_early = mv78xx0_init_early, 151 .init_early = mv78xx0_init_early,
152 .init_irq = mv78xx0_init_irq, 152 .init_irq = mv78xx0_init_irq,
153 .timer = &mv78xx0_timer, 153 .timer = &mv78xx0_timer,
154 .restart = mv78xx0_restart,
154MACHINE_END 155MACHINE_END
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c
index 23d3980ef59..5b9632b0116 100644
--- a/arch/arm/mach-mv78xx0/common.c
+++ b/arch/arm/mach-mv78xx0/common.c
@@ -401,3 +401,19 @@ void __init mv78xx0_init(void)
401 feroceon_l2_init(is_l2_writethrough()); 401 feroceon_l2_init(is_l2_writethrough());
402#endif 402#endif
403} 403}
404
405void mv78xx0_restart(char mode, const char *cmd)
406{
407 /*
408 * Enable soft reset to assert RSTOUTn.
409 */
410 writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
411
412 /*
413 * Assert soft reset.
414 */
415 writel(SOFT_RESET, SYSTEM_SOFT_RESET);
416
417 while (1)
418 ;
419}
diff --git a/arch/arm/mach-mv78xx0/common.h b/arch/arm/mach-mv78xx0/common.h
index 632e63d65e7..07d5f8f6be7 100644
--- a/arch/arm/mach-mv78xx0/common.h
+++ b/arch/arm/mach-mv78xx0/common.h
@@ -46,6 +46,7 @@ void mv78xx0_uart1_init(void);
46void mv78xx0_uart2_init(void); 46void mv78xx0_uart2_init(void);
47void mv78xx0_uart3_init(void); 47void mv78xx0_uart3_init(void);
48void mv78xx0_i2c_init(void); 48void mv78xx0_i2c_init(void);
49void mv78xx0_restart(char, const char *);
49 50
50extern struct sys_timer mv78xx0_timer; 51extern struct sys_timer mv78xx0_timer;
51 52
diff --git a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
index 50b85ae2da5..4d6d48bf51e 100644
--- a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
+++ b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
@@ -99,4 +99,5 @@ MACHINE_START(DB78X00_BP, "Marvell DB-78x00-BP Development Board")
99 .init_early = mv78xx0_init_early, 99 .init_early = mv78xx0_init_early,
100 .init_irq = mv78xx0_init_irq, 100 .init_irq = mv78xx0_init_irq,
101 .timer = &mv78xx0_timer, 101 .timer = &mv78xx0_timer,
102 .restart = mv78xx0_restart,
102MACHINE_END 103MACHINE_END
diff --git a/arch/arm/mach-mv78xx0/include/mach/system.h b/arch/arm/mach-mv78xx0/include/mach/system.h
index 66e7ce4e90b..1ae3585f18d 100644
--- a/arch/arm/mach-mv78xx0/include/mach/system.h
+++ b/arch/arm/mach-mv78xx0/include/mach/system.h
@@ -9,8 +9,6 @@
9#ifndef __ASM_ARCH_SYSTEM_H 9#ifndef __ASM_ARCH_SYSTEM_H
10#define __ASM_ARCH_SYSTEM_H 10#define __ASM_ARCH_SYSTEM_H
11 11
12#include <mach/bridge-regs.h>
13
14static inline void arch_idle(void) 12static inline void arch_idle(void)
15{ 13{
16 cpu_do_idle(); 14 cpu_do_idle();
@@ -18,18 +16,6 @@ static inline void arch_idle(void)
18 16
19static inline void arch_reset(char mode, const char *cmd) 17static inline void arch_reset(char mode, const char *cmd)
20{ 18{
21 /*
22 * Enable soft reset to assert RSTOUTn.
23 */
24 writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
25
26 /*
27 * Assert soft reset.
28 */
29 writel(SOFT_RESET, SYSTEM_SOFT_RESET);
30
31 while (1)
32 ;
33} 19}
34 20
35 21
diff --git a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
index e85222e5357..9a882706e13 100644
--- a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
+++ b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
@@ -84,4 +84,5 @@ MACHINE_START(RD78X00_MASA, "Marvell RD-78x00-MASA Development Board")
84 .init_early = mv78xx0_init_early, 84 .init_early = mv78xx0_init_early,
85 .init_irq = mv78xx0_init_irq, 85 .init_irq = mv78xx0_init_irq,
86 .timer = &mv78xx0_timer, 86 .timer = &mv78xx0_timer,
87 .restart = mv78xx0_restart,
87MACHINE_END 88MACHINE_END