ARM: cleanup boot cpu calling __mmap_switched
authorRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 4 Oct 2010 15:22:34 +0000 (16:22 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 8 Oct 2010 09:07:32 +0000 (10:07 +0100)
This allows us to relocate __mmap_switched and associated data away
from the head section.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/head-common.S
arch/arm/kernel/head.S

index 6ad24d2cb14b8729e246b789eeb5bd80a462d1bc..9f473ef2a64cd198e3f6e9c6ff0508d1a7f1bf23 100644 (file)
@@ -18,7 +18,6 @@
        .align  2
        .type   __switch_data, %object
 __switch_data:
-       .long   __mmap_switched
        .long   __data_loc                      @ r4
        .long   _data                           @ r5
        .long   __bss_start                     @ r6
@@ -39,7 +38,7 @@ __switch_data:
  *  r9  = processor ID
  */
 __mmap_switched:
-       adr     r3, __switch_data + 4
+       adr     r3, __switch_data
 
        ldmia   r3!, {r4, r5, r6, r7}
        cmp     r4, r5                          @ Copy data segment if needed
index eb62bf947212ababff5175d10d784dc4f465273f..aa6ab9d864610fc50d65d3cdc1e1c2fb451cab14 100644 (file)
@@ -95,13 +95,14 @@ ENTRY(stext)
         * above.  On return, the CPU will be ready for the MMU to be
         * 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
        adr     lr, BSYM(__enable_mmu)          @ return (PIC) address
  ARM(  add     pc, r10, #PROCINFO_INITFUNC     )
  THUMB(        add     r12, r10, #PROCINFO_INITFUNC    )
  THUMB(        mov     pc, r12                         )
 ENDPROC(stext)
+       .ltorg
 
 #if defined(CONFIG_SMP)
 ENTRY(secondary_startup)