Commit 1dc5455f authored by Rob Herring's avatar Rob Herring Committed by Russell King

ARM: 8028/1: move __fixup_smp out of init section

With large kernel builds such as allyesconfig exceeding maximum relative
branch offsets, the init section will be too far away to branch to
directly. This causes veneers to be added by the linker, but veneers
don't work before the MMU is enabled. Fix this by moving __fixup_smp to
the .head.text section as it is not very big.
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 07b40341
...@@ -475,7 +475,7 @@ ENDPROC(__turn_mmu_on) ...@@ -475,7 +475,7 @@ ENDPROC(__turn_mmu_on)
#ifdef CONFIG_SMP_ON_UP #ifdef CONFIG_SMP_ON_UP
__INIT __HEAD
__fixup_smp: __fixup_smp:
and r3, r9, #0x000f0000 @ architecture version and r3, r9, #0x000f0000 @ architecture version
teq r3, #0x000f0000 @ CPU ID supported? teq r3, #0x000f0000 @ CPU ID supported?
......
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