• Stephen Warren's avatar
    arm: lib: fix push/pop-section directives · b2f18584
    Stephen Warren authored
    With the existing code, function symbols are defined in .text, and the
    body is defined in .text.xxx. This causes (at least some version of) the
    linker not to emit the function body into the final binary, since it's
    part of a different section to the symbols being referenced. This of
    course causes a wide variety of failures.
    
    This change moves the push/pop-section directives before the function
    symbols, and after any relate ENDPROC macro invocations, so that symbols
    and bodies are all in the "pushed" sections, and thus the function bodies
    are emitted into the binary.
    
    This solves (at least) the boot problems currently seen on Tegra systems
    that use SPL (i.e. all ARMv7 Tegras).
    
    Fixes: 13b0a91a ("arm: lib: Split asm symbols into different .text subsections")
    Cc: Marek Vasut <marex@denx.de>
    Cc: Tom Warren <twarren@nvidia.com>
    Cc: Simon Glass <sjg@chromium.org>
    Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    b2f18584
Name
Last commit
Last update
Licenses Loading commit data...
api Loading commit data...
arch Loading commit data...
board Loading commit data...
cmd Loading commit data...
common Loading commit data...
configs Loading commit data...
disk Loading commit data...
doc Loading commit data...
drivers Loading commit data...
dts Loading commit data...
examples Loading commit data...
fs Loading commit data...
include Loading commit data...
lib Loading commit data...
net Loading commit data...
post Loading commit data...
scripts Loading commit data...
test Loading commit data...
tools Loading commit data...
.checkpatch.conf Loading commit data...
.gitignore Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
Kbuild Loading commit data...
Kconfig Loading commit data...
MAINTAINERS Loading commit data...
MAKEALL Loading commit data...
Makefile Loading commit data...
README Loading commit data...
config.mk Loading commit data...
snapshot.commit Loading commit data...