Commit a4ae4134 authored by Russell King's avatar Russell King

ARM: cleanup boot cpu calling __mmap_switched

This allows us to relocate __mmap_switched and associated data away
from the head section.
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 5085f3ff
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
.align 2 .align 2
.type __switch_data, %object .type __switch_data, %object
__switch_data: __switch_data:
.long __mmap_switched
.long __data_loc @ r4 .long __data_loc @ r4
.long _data @ r5 .long _data @ r5
.long __bss_start @ r6 .long __bss_start @ r6
...@@ -39,7 +38,7 @@ __switch_data: ...@@ -39,7 +38,7 @@ __switch_data:
* r9 = processor ID * r9 = processor ID
*/ */
__mmap_switched: __mmap_switched:
adr r3, __switch_data + 4 adr r3, __switch_data
ldmia r3!, {r4, r5, r6, r7} ldmia r3!, {r4, r5, r6, r7}
cmp r4, r5 @ Copy data segment if needed cmp r4, r5 @ Copy data segment if needed
......
...@@ -95,13 +95,14 @@ ENTRY(stext) ...@@ -95,13 +95,14 @@ ENTRY(stext)
* above. On return, the CPU will be ready for the MMU to be * above. On return, the CPU will be ready for the MMU to be
* turned on, and r0 will hold the CPU control register value. * turned on, and r0 will hold the CPU control register value.
*/ */
ldr r13, __switch_data @ address to jump to after ldr r13, =__mmap_switched @ address to jump to after
@ mmu has been enabled @ mmu has been enabled
adr lr, BSYM(__enable_mmu) @ return (PIC) address adr lr, BSYM(__enable_mmu) @ return (PIC) address
ARM( add pc, r10, #PROCINFO_INITFUNC ) ARM( add pc, r10, #PROCINFO_INITFUNC )
THUMB( add r12, r10, #PROCINFO_INITFUNC ) THUMB( add r12, r10, #PROCINFO_INITFUNC )
THUMB( mov pc, r12 ) THUMB( mov pc, r12 )
ENDPROC(stext) ENDPROC(stext)
.ltorg
#if defined(CONFIG_SMP) #if defined(CONFIG_SMP)
ENTRY(secondary_startup) ENTRY(secondary_startup)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment