patch-2.3.30 linux/include/asm-arm/arch-ebsa110/system.h

Next file: linux/include/asm-arm/arch-ebsa285/system.h
Previous file: linux/include/asm-arm/arch-cl7500/system.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.29/linux/include/asm-arm/arch-ebsa110/system.h linux/include/asm-arm/arch-ebsa110/system.h
@@ -6,7 +6,16 @@
 #ifndef __ASM_ARCH_SYSTEM_H
 #define __ASM_ARCH_SYSTEM_H
 
-#define arch_do_idle()		do { } while (0)
-#define arch_reset(mode)	do { } while (0)
+#define arch_do_idle()		cpu_do_idle()
+
+extern __inline__ void arch_reset(char mode)
+{
+	if (mode == 's') {
+		__asm__ volatile(
+		"mcr	p15, 0, %0, c1, c0, 0	@ MMU off
+		 mov	pc, #0x80000000		@ jump to flash"
+		: : "r" (cpu_reset()) : "cc");
+	}
+}
 
 #endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)