]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
ARM: pm: reallocate registers to avoid r2, r3
authorRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 13 Jun 2011 14:25:11 +0000 (15:25 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 24 Jun 2011 07:47:32 +0000 (08:47 +0100)
Avoid using r2 and r3 in the suspend code, allowing these to be
passed further into the function as arguments.

Acked-by: Frank Hofmann <frank.hofmann@tomtom.com>
Tested-by: Kevin Hilman <khilman@ti.com>
Acked-by: Jean Pihet <j-pihet@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/sleep.S

index 8dbca93417ffc6c333a8b0b5bfe141840e5972f4..358be13499da88d0c54408df01f08bedb48f2da4 100644 (file)
@@ -20,26 +20,26 @@ ENTRY(cpu_suspend)
        mov     r9, lr
 #ifdef MULTI_CPU
        ldr     r10, =processor
-       ldr     r0, [r10, #CPU_SLEEP_SIZE] @ size of CPU sleep state
+       ldr     r5, [r10, #CPU_SLEEP_SIZE] @ size of CPU sleep state
        ldr     ip, [r10, #CPU_DO_RESUME] @ virtual resume function
 #else
-       ldr     r0, =cpu_suspend_size
+       ldr     r5, =cpu_suspend_size
        ldr     ip, =cpu_do_resume
 #endif
-       mov     r2, sp                  @ current virtual SP
-       sub     sp, sp, r0              @ allocate CPU state on stack
+       mov     r6, sp                  @ current virtual SP
+       sub     sp, sp, r5              @ allocate CPU state on stack
        mov     r0, sp                  @ save pointer
        add     ip, ip, r1              @ convert resume fn to phys
-       stmfd   sp!, {r1, r2, ip}       @ save v:p, virt SP, phys resume fn
-       ldr     r3, =sleep_save_sp
-       add     r2, sp, r1              @ convert SP to phys
+       stmfd   sp!, {r1, r6, ip}       @ save v:p, virt SP, phys resume fn
+       ldr     r5, =sleep_save_sp
+       add     r6, sp, r1              @ convert SP to phys
 #ifdef CONFIG_SMP
        ALT_SMP(mrc p15, 0, lr, c0, c0, 5)
        ALT_UP(mov lr, #0)
        and     lr, lr, #15
-       str     r2, [r3, lr, lsl #2]    @ save phys SP
+       str     r6, [r5, lr, lsl #2]    @ save phys SP
 #else
-       str     r2, [r3]                @ save phys SP
+       str     r6, [r5]                @ save phys SP
 #endif
 #ifdef MULTI_CPU
        mov     lr, pc