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>
This commit is contained in:
@@ -151,4 +151,5 @@ MACHINE_START(TERASTATION_WXL, "Buffalo Nas WXL")
|
|||||||
.init_early = mv78xx0_init_early,
|
.init_early = mv78xx0_init_early,
|
||||||
.init_irq = mv78xx0_init_irq,
|
.init_irq = mv78xx0_init_irq,
|
||||||
.timer = &mv78xx0_timer,
|
.timer = &mv78xx0_timer,
|
||||||
|
.restart = mv78xx0_restart,
|
||||||
MACHINE_END
|
MACHINE_END
|
||||||
|
@@ -401,3 +401,19 @@ void __init mv78xx0_init(void)
|
|||||||
feroceon_l2_init(is_l2_writethrough());
|
feroceon_l2_init(is_l2_writethrough());
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void mv78xx0_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)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
@@ -46,6 +46,7 @@ void mv78xx0_uart1_init(void);
|
|||||||
void mv78xx0_uart2_init(void);
|
void mv78xx0_uart2_init(void);
|
||||||
void mv78xx0_uart3_init(void);
|
void mv78xx0_uart3_init(void);
|
||||||
void mv78xx0_i2c_init(void);
|
void mv78xx0_i2c_init(void);
|
||||||
|
void mv78xx0_restart(char, const char *);
|
||||||
|
|
||||||
extern struct sys_timer mv78xx0_timer;
|
extern struct sys_timer mv78xx0_timer;
|
||||||
|
|
||||||
|
@@ -99,4 +99,5 @@ MACHINE_START(DB78X00_BP, "Marvell DB-78x00-BP Development Board")
|
|||||||
.init_early = mv78xx0_init_early,
|
.init_early = mv78xx0_init_early,
|
||||||
.init_irq = mv78xx0_init_irq,
|
.init_irq = mv78xx0_init_irq,
|
||||||
.timer = &mv78xx0_timer,
|
.timer = &mv78xx0_timer,
|
||||||
|
.restart = mv78xx0_restart,
|
||||||
MACHINE_END
|
MACHINE_END
|
||||||
|
@@ -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)
|
|||||||
|
|
||||||
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)
|
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -84,4 +84,5 @@ MACHINE_START(RD78X00_MASA, "Marvell RD-78x00-MASA Development Board")
|
|||||||
.init_early = mv78xx0_init_early,
|
.init_early = mv78xx0_init_early,
|
||||||
.init_irq = mv78xx0_init_irq,
|
.init_irq = mv78xx0_init_irq,
|
||||||
.timer = &mv78xx0_timer,
|
.timer = &mv78xx0_timer,
|
||||||
|
.restart = mv78xx0_restart,
|
||||||
MACHINE_END
|
MACHINE_END
|
||||||
|
Reference in New Issue
Block a user