提交 6ca6ff97 编写于 作者: R Russell King

ARM: restart: dove: use new restart hook

Hook these platforms restart code into the new restart hook rather than
using arch_reset().
Acked-by: NNicolas Pitre <nico@linaro.org>
Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
上级 c6121ddd
...@@ -93,4 +93,5 @@ MACHINE_START(CM_A510, "Compulab CM-A510 Board") ...@@ -93,4 +93,5 @@ MACHINE_START(CM_A510, "Compulab CM-A510 Board")
.init_early = dove_init_early, .init_early = dove_init_early,
.init_irq = dove_init_irq, .init_irq = dove_init_irq,
.timer = &dove_timer, .timer = &dove_timer,
.restart = dove_restart,
MACHINE_END MACHINE_END
...@@ -292,3 +292,19 @@ void __init dove_init(void) ...@@ -292,3 +292,19 @@ void __init dove_init(void)
dove_xor0_init(); dove_xor0_init();
dove_xor1_init(); dove_xor1_init();
} }
void dove_restart(char mode, const char *cmd)
{
/*
* Enable soft reset to assert RSTOUTn.
*/
writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
/*
* Assert soft reset.
*/
writel(SOFT_RESET, SYSTEM_SOFT_RESET);
while (1)
;
}
...@@ -39,5 +39,6 @@ void dove_spi1_init(void); ...@@ -39,5 +39,6 @@ void dove_spi1_init(void);
void dove_i2c_init(void); void dove_i2c_init(void);
void dove_sdio0_init(void); void dove_sdio0_init(void);
void dove_sdio1_init(void); void dove_sdio1_init(void);
void dove_restart(char, const char *);
#endif #endif
...@@ -100,4 +100,5 @@ MACHINE_START(DOVE_DB, "Marvell DB-MV88AP510-BP Development Board") ...@@ -100,4 +100,5 @@ MACHINE_START(DOVE_DB, "Marvell DB-MV88AP510-BP Development Board")
.init_early = dove_init_early, .init_early = dove_init_early,
.init_irq = dove_init_irq, .init_irq = dove_init_irq,
.timer = &dove_timer, .timer = &dove_timer,
.restart = dove_restart,
MACHINE_END MACHINE_END
...@@ -9,8 +9,6 @@ ...@@ -9,8 +9,6 @@
#ifndef __ASM_ARCH_SYSTEM_H #ifndef __ASM_ARCH_SYSTEM_H
#define __ASM_ARCH_SYSTEM_H #define __ASM_ARCH_SYSTEM_H
#include <mach/bridge-regs.h>
static inline void arch_idle(void) static inline void arch_idle(void)
{ {
cpu_do_idle(); cpu_do_idle();
...@@ -18,18 +16,6 @@ static inline void arch_idle(void) ...@@ -18,18 +16,6 @@ static inline void arch_idle(void)
static inline void arch_reset(char mode, const char *cmd) static inline void arch_reset(char mode, const char *cmd)
{ {
/*
* Enable soft reset to assert RSTOUTn.
*/
writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
/*
* Assert soft reset.
*/
writel(SOFT_RESET, SYSTEM_SOFT_RESET);
while (1)
;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册