diff options
Diffstat (limited to 'arch/arm/mach-mv78xx0')
-rw-r--r-- | arch/arm/mach-mv78xx0/buffalo-wxl-setup.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/common.c | 16 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/common.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/db78x00-bp-setup.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/include/mach/system.h | 19 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/rd78x00-masa-setup.c | 1 |
6 files changed, 20 insertions, 19 deletions
diff --git a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c index 0e94268d6e6f..ee74ec97c141 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, | ||
154 | MACHINE_END | 155 | MACHINE_END |
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c index 23d3980ef59d..5b9632b01169 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 | |||
405 | void 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 632e63d65e7a..07d5f8f6be7d 100644 --- a/arch/arm/mach-mv78xx0/common.h +++ b/arch/arm/mach-mv78xx0/common.h | |||
@@ -46,6 +46,7 @@ void mv78xx0_uart1_init(void); | |||
46 | void mv78xx0_uart2_init(void); | 46 | void mv78xx0_uart2_init(void); |
47 | void mv78xx0_uart3_init(void); | 47 | void mv78xx0_uart3_init(void); |
48 | void mv78xx0_i2c_init(void); | 48 | void mv78xx0_i2c_init(void); |
49 | void mv78xx0_restart(char, const char *); | ||
49 | 50 | ||
50 | extern struct sys_timer mv78xx0_timer; | 51 | extern 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 50b85ae2da52..4d6d48bf51ef 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, | ||
102 | MACHINE_END | 103 | MACHINE_END |
diff --git a/arch/arm/mach-mv78xx0/include/mach/system.h b/arch/arm/mach-mv78xx0/include/mach/system.h index 66e7ce4e90bd..8c3a5387cec7 100644 --- a/arch/arm/mach-mv78xx0/include/mach/system.h +++ b/arch/arm/mach-mv78xx0/include/mach/system.h | |||
@@ -9,28 +9,9 @@ | |||
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 | |||
14 | static inline void arch_idle(void) | 12 | static inline void arch_idle(void) |
15 | { | 13 | { |
16 | cpu_do_idle(); | 14 | cpu_do_idle(); |
17 | } | 15 | } |
18 | 16 | ||
19 | static inline void arch_reset(char mode, const char *cmd) | ||
20 | { | ||
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 | } | ||
34 | |||
35 | |||
36 | #endif | 17 | #endif |
diff --git a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c index e85222e53578..9a882706e138 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, | ||
87 | MACHINE_END | 88 | MACHINE_END |