diff options
author | Philipp Tomsich <philipp.tomsich@theobroma-systems.com> | 2017-09-18 11:40:10 +0200 |
---|---|---|
committer | Philipp Tomsich <philipp.tomsich@theobroma-systems.com> | 2017-10-02 11:20:55 +0200 |
commit | 260321c8dd2d9096a51178a2d312681bab2ff41a (patch) | |
tree | 2b3ecbbe77d9ec4c2c6c17892620aca4e6ad2f82 | |
parent | 4af822c1e4b4facae8c3abb755f0b185a6af4d67 (diff) |
arm: mark save_boot_params_ret as a function
As no '.type' was set for save_boot_params_ret in start.S, binutils
did not track whether it was emitted as A32 or T32. By properly
marking save_boot_params_ret as a potential function entry, we can
make sure that the compiler will insert the appropriate instructions
for branching to save_boot_params_ret both for call-sites emitted as
A32 and T32.
Reported-by: Andy Yan <andy.yan@rock-chips.com>
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Andy Yan <andy.yan@rock-chips.com>
Series-changes: 3
- tracked the root-cause why no interwork branch was emitted and fixed
it using a '.type'-directive in start.S to mark save_boot_params_ret
as a (possible) function-entry.
-rw-r--r-- | arch/arm/cpu/armv7/start.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S index 7b84a7a0f1..95a0b5224b 100644 --- a/arch/arm/cpu/armv7/start.S +++ b/arch/arm/cpu/armv7/start.S @@ -31,6 +31,7 @@ .globl reset .globl save_boot_params_ret + .type save_boot_params_ret,%function #ifdef CONFIG_ARMV7_LPAE .global switch_to_hypervisor_ret #endif |