patch-2.4.9 linux/arch/arm/boot/compressed/head.S

Next file: linux/arch/arm/boot/compressed/misc.c
Previous file: linux/arch/arm/Makefile
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.8/linux/arch/arm/boot/compressed/head.S linux/arch/arm/boot/compressed/head.S
@@ -102,19 +102,24 @@
 1:		mov	r7, r1			@ save architecture ID
 		mov	r8, #0			@ save r0
 
+#ifndef __ARM_ARCH_2__
 		/*
 		 * Booting from Angel - need to enter SVC mode and disable
 		 * FIQs/IRQs (numeric definitions from angel arm.h source).
 		 * We only do this if we were in user mode on entry.
 		 */
-		mrs	r0, cpsr		@ get current mode
-		tst	r0, #3			@ not user?
+		mrs	r2, cpsr		@ get current mode
+		tst	r2, #3			@ not user?
 		bne	not_angel
 		mov	r0, #0x17		@ angel_SWIreason_EnterSVC
 		swi	0x123456		@ angel_SWI_ARM
-not_angel:	mrs	r0, cpsr		@ turn off interrupts to
-		orr	r0, r0, #0xc0		@ prevent angel from running
-		msr	cpsr_c, r0
+not_angel:
+		mrs	r2, cpsr		@ turn off interrupts to
+		orr	r2, r2, #0xc0		@ prevent angel from running
+		msr	cpsr_c, r2
+#else
+		teqp	pc, #0x0c000003		@ turn off interrupts
+#endif
 
 		/*
 		 * Note that some cache flushing and other stuff may

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