summaryrefslogtreecommitdiffstats
path: root/arch/arm/lib32/barebox.lds.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/lib32/barebox.lds.S')
-rw-r--r--arch/arm/lib32/barebox.lds.S12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/lib32/barebox.lds.S b/arch/arm/lib32/barebox.lds.S
index 6dc8bd2f3c..b49c269a43 100644
--- a/arch/arm/lib32/barebox.lds.S
+++ b/arch/arm/lib32/barebox.lds.S
@@ -19,6 +19,7 @@
*/
#include <asm-generic/barebox.lds.h>
+#include <asm/secure.h>
OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
OUTPUT_ARCH(arm)
@@ -30,6 +31,7 @@ SECTIONS
#else
. = TEXT_BASE;
#endif
+ .image_start : { *(.__image_start) }
#ifndef CONFIG_PBL_IMAGE
PRE_IMAGE
@@ -116,11 +118,21 @@ SECTIONS
}
_edata = .;
+ .image_end : { *(.__image_end) }
. = ALIGN(4);
__bss_start = .;
.bss : { *(.bss*) }
__bss_stop = .;
+
+#ifdef CONFIG_ARM_SECURE_MONITOR
+ . = ALIGN(16);
+ __secure_stack_start = .;
+ . = . + (ARM_SECURE_MAX_CPU << ARM_SECURE_STACK_SHIFT);
+ __secure_stack_end = .;
+ __secure_end = .;
+#endif
+
_end = .;
_barebox_image_size = __bss_start - TEXT_BASE;
}