ARM: restart: integrator: use new restart hook

Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Russell King 2011-11-03 19:54:37 +00:00
parent 00e9967e0d
commit 6338b66f8a
5 changed files with 11 additions and 7 deletions

View file

@ -1,2 +1,3 @@
void integrator_init_early(void);
void integrator_reserve(void);
void integrator_restart(char, const char *);

View file

@ -238,3 +238,11 @@ void __init integrator_reserve(void)
{
memblock_reserve(PHYS_OFFSET, __pa(swapper_pg_dir) - PHYS_OFFSET);
}
/*
* To reset, we hit the on-board reset register in the system FPGA
*/
void integrator_restart(char mode, const char *cmd)
{
cm_control(CM_CTRL_RESET, CM_CTRL_RESET);
}

View file

@ -21,8 +21,6 @@
#ifndef __ASM_ARCH_SYSTEM_H
#define __ASM_ARCH_SYSTEM_H
#include <mach/cm.h>
static inline void arch_idle(void)
{
/*
@ -34,11 +32,6 @@ static inline void arch_idle(void)
static inline void arch_reset(char mode, const char *cmd)
{
/*
* To reset, we hit the on-board reset register
* in the system FPGA
*/
cm_control(CM_CTRL_RESET, CM_CTRL_RESET);
}
#endif

View file

@ -472,4 +472,5 @@ MACHINE_START(INTEGRATOR, "ARM-Integrator")
.init_irq = ap_init_irq,
.timer = &ap_timer,
.init_machine = ap_init,
.restart = integrator_restart,
MACHINE_END

View file

@ -499,4 +499,5 @@ MACHINE_START(CINTEGRATOR, "ARM-IntegratorCP")
.init_irq = intcp_init_irq,
.timer = &cp_timer,
.init_machine = intcp_init,
.restart = integrator_restart,
MACHINE_END