mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-12 07:57:21 +00:00
980d6a5511
Until now we've been using memory beyond psci_text_end as stack space for the secure monitor or PSCI implementation, even if space was not allocated for it. This was partially fixed in ("ARM: allocate extra space for PSCI stack in secure section during link phase"). However, calculating stack space from psci_text_end in one place, while allocating the space in another is error prone. This patch adds a separate empty secure stack section, with space for CONFIG_ARMV7_PSCI_NR_CPUS stacks, each 1 KB. There's also __secure_stack_start and __secure_stack_end symbols. The linker script handles calculating the correct VMAs for the stack section. For platforms that relocate/copy the secure monitor before using it, the space is not allocated in the executable, saving space. For platforms that do not define CONFIG_ARMV7_PSCI_NR_CPUS, a whole page of stack space for 4 CPUs is allocated, matching the previous behavior. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Hans de Goede <hdegoede@redhat.com> |
||
---|---|---|
.. | ||
ashldi3.S | ||
ashrdi3.S | ||
asm-offsets.c | ||
bootm-fdt.c | ||
bootm.c | ||
cache-cp15.c | ||
cache-pl310.c | ||
cache.c | ||
ccn504.S | ||
cmd_boot.c | ||
crt0.S | ||
crt0_64.S | ||
debug.S | ||
div0.c | ||
div64.S | ||
eabi_compat.c | ||
gic_64.S | ||
interrupts.c | ||
interrupts_64.c | ||
interrupts_m.c | ||
lib1funcs.S | ||
lshrdi3.S | ||
Makefile | ||
memcpy.S | ||
memset.S | ||
muldi3.S | ||
relocate.S | ||
relocate_64.S | ||
reset.c | ||
sections.c | ||
semihosting.c | ||
spl.c | ||
stack.c | ||
uldivmod.S | ||
vectors.S | ||
vectors_m.S |