diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-11-04 16:42:37 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-05 12:57:18 +0000 |
commit | e11e909df5d1ae876502f9e5f714852aa6548b58 (patch) | |
tree | 00f50aacb59cba497e85dcd8e5ddbd1866f48ae1 /arch/arm/mach-rpc/riscpc.c | |
parent | 47cacdd4ed95d18e5cc28b46d8835c96a9cadfb3 (diff) |
ARM: restart: riscpc: use new restart hook
Hook the RiscPC restart code into the new restart hook.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-rpc/riscpc.c')
-rw-r--r-- | arch/arm/mach-rpc/riscpc.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-rpc/riscpc.c b/arch/arm/mach-rpc/riscpc.c index 8559598ab76..3d44a59fc0d 100644 --- a/arch/arm/mach-rpc/riscpc.c +++ b/arch/arm/mach-rpc/riscpc.c @@ -24,6 +24,7 @@ #include <asm/elf.h> #include <asm/mach-types.h> #include <mach/hardware.h> +#include <asm/hardware/iomd.h> #include <asm/page.h> #include <asm/domain.h> #include <asm/setup.h> @@ -214,6 +215,16 @@ static int __init rpc_init(void) arch_initcall(rpc_init); +static void rpc_restart(char mode, const char *cmd) +{ + iomd_writeb(0, IOMD_ROMCR0); + + /* + * Jump into the ROM + */ + soft_restart(0); +} + extern struct sys_timer ioc_timer; MACHINE_START(RISCPC, "Acorn-RiscPC") @@ -224,4 +235,5 @@ MACHINE_START(RISCPC, "Acorn-RiscPC") .map_io = rpc_map_io, .init_irq = rpc_init_irq, .timer = &ioc_timer, + .restart = rpc_restart, MACHINE_END |