summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv7/lowlevel_init.S
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2017-05-16 21:46:34 +0300
committerTom Rini <trini@konsulko.com>2017-06-05 18:02:23 +0300
commitffb56568626be636f0256795df5322633f50cde3 (patch)
treeb125ef6112b0126e0d3a294db4cf85c79be5537c /arch/arm/cpu/armv7/lowlevel_init.S
parent7c0c6be52c05a7c1518ee403ee35ddf1eb93974a (diff)
downloadu-boot-ffb56568626be636f0256795df5322633f50cde3.tar.xz
armv7: Mark the default lowlevel_init function as weak
Rather than have a long and if check in the Makefile, mark the default lowlevel_init function as weak (as we do on armv8) so that SoCs can override it if needed, and it will still be discarded if unused. Provide a weak s_init as well to allow for this to link and be discarded. Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'arch/arm/cpu/armv7/lowlevel_init.S')
-rw-r--r--arch/arm/cpu/armv7/lowlevel_init.S10
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/lowlevel_init.S b/arch/arm/cpu/armv7/lowlevel_init.S
index 658934d664..64f105864f 100644
--- a/arch/arm/cpu/armv7/lowlevel_init.S
+++ b/arch/arm/cpu/armv7/lowlevel_init.S
@@ -15,7 +15,14 @@
#include <config.h>
#include <linux/linkage.h>
-ENTRY(lowlevel_init)
+.pushsection .text.s_init, "ax"
+WEAK(s_init)
+ bx lr
+ENDPROC(s_init)
+.popsection
+
+.pushsection .text.lowlevel_init, "ax"
+WEAK(lowlevel_init)
/*
* Setup a temporary stack. Global data is not available yet.
*/
@@ -61,3 +68,4 @@ ENTRY(lowlevel_init)
bl s_init
pop {ip, pc}
ENDPROC(lowlevel_init)
+.popsection