From eaf6ea6a1dc10d49cdcbcad0f8b0abb6c1eb1db1 Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Wed, 25 May 2022 12:16:03 -0400 Subject: Migrate CUSTOM_SYS_INIT_SP_ADDR to Kconfig using system-constants.h - Make all users of CUSTOM_SYS_INIT_SP_ADDR reference SYS_INIT_SP_ADDR - Introduce HAS_CUSTOM_SYS_INIT_SP_ADDR to allow for setting the stack pointer directly, otherwise we use the common calculation. - On some platforms that were using the standard calculation but did not set CONFIG_SYS_INIT_RAM_SIZE / CONFIG_SYS_INIT_RAM_ADDR, set them. - On a small number of platforms that were not subtracting GENERATED_GBL_DATA_SIZE do so now via the standard calculation. - CONFIG_SYS_INIT_SP_OFFSET is now widely unused, so remove it from most board config header files. Signed-off-by: Tom Rini --- Kconfig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'Kconfig') diff --git a/Kconfig b/Kconfig index f017968918..429b5f9a70 100644 --- a/Kconfig +++ b/Kconfig @@ -242,6 +242,24 @@ config SYS_BOOT_GET_KBD Enables allocating and saving a kernel copy of the bd_info in space between "bootm_low" and "bootm_low" + BOOTMAPSZ. +config HAS_CUSTOM_SYS_INIT_SP_ADDR + bool "Use a custom location for the initial stack pointer address" + depends on ARC || (ARM && !INIT_SP_RELATIVE) || MIPS || PPC || RISCV + default y if TFABOOT + help + Typically, we use an initial stack pointer address that is calculated + by taking the statically defined CONFIG_SYS_INIT_RAM_ADDR, adding the + statically defined CONFIG_SYS_INIT_RAM_SIZE and then subtracting the + build-time constant of GENERATED_GBL_DATA_SIZE. On MIPS a different + but statica calculation is performed. However, some platforms will + take a different approach. Say Y here to define the address statically + instead. + +config CUSTOM_SYS_INIT_SP_ADDR + hex "Static location for the initial stack pointer" + depends on HAS_CUSTOM_SYS_INIT_SP_ADDR + default SYS_TEXT_BASE if TFABOOT + config SYS_MALLOC_F bool "Enable malloc() pool before relocation" default y if DM -- cgit v1.2.3