patch-2.4.13 linux/arch/arm/kernel/entry-armv.S

Next file: linux/arch/arm/kernel/entry-common.S
Previous file: linux/arch/arm/kernel/dma-isa.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.12/linux/arch/arm/kernel/entry-armv.S linux/arch/arm/kernel/entry-armv.S
@@ -404,6 +404,7 @@
 		.endm
 
 #elif defined(CONFIG_ARCH_L7200)
+#include <asm/hardware.h>
 	
 		.equ	irq_base_addr,	IO_BASE_2
 
@@ -625,8 +626,8 @@
  * This routine must not corrupt r9
  */
 #ifdef MULTI_CPU
-		ldr	r2, .LCprocfns
-		mov	lr, pc
+		ldr	r2, .LCprocfns			@ pass r0, r3 to
+		mov	lr, pc				@ processor code
 		ldr	pc, [r2]			@ call processor specific code
 #else
 		bl	cpu_data_abort
@@ -722,16 +723,16 @@
 		.align	5
 __dabt_usr:	sub	sp, sp, #S_FRAME_SIZE		@ Allocate frame size in one go
 		stmia	sp, {r0 - r12}			@ save r0 - r12
-		ldr	r4, .LCabt
-		add	r3, sp, #S_PC
-		ldmia	r4, {r0 - r2}			@ Get USR pc, cpsr
-		stmia	r3, {r0 - r2}			@ Save USR pc, cpsr, old_r0
-		stmdb	r3, {sp, lr}^
-		alignment_trap r4, r7, __temp_abt
+		ldr	r7, .LCabt
+		add	r5, sp, #S_PC
+		ldmia	r7, {r0, r3, r4}		@ Get USR pc, cpsr
+		stmia	r5, {r0, r3, r4}		@ Save USR pc, cpsr, old_r0
+		stmdb	r5, {sp, lr}^
+		alignment_trap r7, r7, __temp_abt
 		zero_fp
 #ifdef MULTI_CPU
-		ldr	r2, .LCprocfns
-		mov	lr, pc
+		ldr	r2, .LCprocfns			@ pass r0, r3 to
+		mov	lr, pc				@ processor code
 		ldr	pc, [r2]			@ call processor specific code
 #else
 		bl	cpu_data_abort

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