summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/u-boot.lds
diff options
context:
space:
mode:
authorChen-Yu Tsai <wens@csie.org>2016-07-05 21:45:06 +0800
committerHans de Goede <hdegoede@redhat.com>2016-07-15 15:54:58 +0200
commita5aa7ff33a942ce8ea38006fd5225a800827bb2c (patch)
tree6f3580d752c60a439c1f7bd20f6046bb8155dc26 /arch/arm/cpu/u-boot.lds
parentafc1f65f504324cd5f87a8cb480bebeb0c61e4e0 (diff)
ARM: Add secure section for initialized data
The secure monitor may need to store global or static values within the secure section of memory, such as target PC or CPU power status. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'arch/arm/cpu/u-boot.lds')
-rw-r--r--arch/arm/cpu/u-boot.lds9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds
index 5a65c27cfa..36c9fd0bd0 100644
--- a/arch/arm/cpu/u-boot.lds
+++ b/arch/arm/cpu/u-boot.lds
@@ -69,12 +69,17 @@ SECTIONS
*(._secure.text)
}
- .secure_stack ALIGN(ADDR(.secure_text) + SIZEOF(.secure_text),
+ .secure_data : AT(LOADADDR(.secure_text) + SIZEOF(.secure_text))
+ {
+ *(._secure.data)
+ }
+
+ .secure_stack ALIGN(ADDR(.secure_data) + SIZEOF(.secure_data),
CONSTANT(COMMONPAGESIZE)) (NOLOAD) :
#ifdef __ARMV7_PSCI_STACK_IN_RAM
AT(ADDR(.secure_stack))
#else
- AT(LOADADDR(.secure_text) + SIZEOF(.secure_text))
+ AT(LOADADDR(.secure_data) + SIZEOF(.secure_data))
#endif
{
KEEP(*(.__secure_stack_start))