Ver código fonte

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>
Russell King 13 anos atrás
pai
commit
e11e909df5
2 arquivos alterados com 12 adições e 10 exclusões
  1. 0 10
      arch/arm/mach-rpc/include/mach/system.h
  2. 12 0
      arch/arm/mach-rpc/riscpc.c

+ 0 - 10
arch/arm/mach-rpc/include/mach/system.h

@@ -7,10 +7,6 @@
  * it under the terms of the GNU General Public License version 2 as
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  * published by the Free Software Foundation.
  */
  */
-#include <linux/io.h>
-#include <mach/hardware.h>
-#include <asm/hardware/iomd.h>
-
 static inline void arch_idle(void)
 static inline void arch_idle(void)
 {
 {
 	cpu_do_idle();
 	cpu_do_idle();
@@ -18,10 +14,4 @@ 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)
 {
 {
-	iomd_writeb(0, IOMD_ROMCR0);
-
-	/*
-	 * Jump into the ROM
-	 */
-	soft_restart(0);
 }
 }

+ 12 - 0
arch/arm/mach-rpc/riscpc.c

@@ -24,6 +24,7 @@
 #include <asm/elf.h>
 #include <asm/elf.h>
 #include <asm/mach-types.h>
 #include <asm/mach-types.h>
 #include <mach/hardware.h>
 #include <mach/hardware.h>
+#include <asm/hardware/iomd.h>
 #include <asm/page.h>
 #include <asm/page.h>
 #include <asm/domain.h>
 #include <asm/domain.h>
 #include <asm/setup.h>
 #include <asm/setup.h>
@@ -214,6 +215,16 @@ static int __init rpc_init(void)
 
 
 arch_initcall(rpc_init);
 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;
 extern struct sys_timer ioc_timer;
 
 
 MACHINE_START(RISCPC, "Acorn-RiscPC")
 MACHINE_START(RISCPC, "Acorn-RiscPC")
@@ -224,4 +235,5 @@ MACHINE_START(RISCPC, "Acorn-RiscPC")
 	.map_io		= rpc_map_io,
 	.map_io		= rpc_map_io,
 	.init_irq	= rpc_init_irq,
 	.init_irq	= rpc_init_irq,
 	.timer		= &ioc_timer,
 	.timer		= &ioc_timer,
+	.restart	= rpc_restart,
 MACHINE_END
 MACHINE_END