tpl: Rename TPL_NEEDS_SEPARATE_STACK to TPL_HAVE_INIT_STACK

The most common word for features that make a platform work is to use
'HAVE_xxx'. Rename this option to match.

Update the help to use the word 'phase' rather than 'stage', since
that is the current terminology. Also clarify that, absent this setting,
the stack pointer generally comes from the value used by U-Boot proper,
rather than SPL.

Move the option just above TPL_STACK which depends on it.

Series-changes: 2
- Add new patch to rename TPL_NEEDS_SEPARATE_STACK

Series-changes: 3
- Reword the Kconfig help for TPL_HAVE_INIT_STACK

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2025-02-08 07:31:20 -07:00
parent 794124b325
commit 8d319b2201
5 changed files with 21 additions and 20 deletions

View File

@@ -100,7 +100,7 @@ ENTRY(_main)
* Set up initial C runtime environment and call board_init_f(0).
*/
#if defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_NEEDS_SEPARATE_STACK)
#if defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_HAVE_INIT_STACK)
ldr r0, =(CONFIG_TPL_STACK)
#elif defined(CONFIG_XPL_BUILD) && defined(CONFIG_SPL_STACK)
ldr r0, =(CONFIG_SPL_STACK)

View File

@@ -69,7 +69,7 @@ ENTRY(_main)
/*
* Set up initial C runtime environment and call board_init_f(0).
*/
#if defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_NEEDS_SEPARATE_STACK)
#if defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_HAVE_INIT_STACK)
ldr x0, =(CONFIG_TPL_STACK)
#elif defined(CONFIG_XPL_BUILD) && defined(CONFIG_SPL_STACK)
ldr x0, =(CONFIG_SPL_STACK)

View File

@@ -9,7 +9,7 @@ config ROCKCHIP_PX30
select SPL
select TPL
select TPL_TINY_FRAMEWORK if TPL
select TPL_NEEDS_SEPARATE_STACK if TPL
select TPL_HAVE_INIT_STACK if TPL
imply SPL_SEPARATE_BSS
select SPL_SERIAL
select TPL_SERIAL
@@ -106,7 +106,7 @@ config ROCKCHIP_RK322X
select TPL
select TPL_DM
select TPL_OF_LIBFDT
select TPL_NEEDS_SEPARATE_STACK if TPL
select TPL_HAVE_INIT_STACK if TPL
select SPL_DRIVERS_MISC
imply ROCKCHIP_COMMON_BOARD
imply SPL_SERIAL
@@ -139,7 +139,7 @@ config ROCKCHIP_RK3288
imply TPL_DRIVERS_MISC
imply TPL_LIBCOMMON_SUPPORT
imply TPL_LIBGENERIC_SUPPORT
imply TPL_NEEDS_SEPARATE_STACK
imply TPL_HAVE_INIT_STACK
imply TPL_OF_CONTROL
imply TPL_OF_PLATDATA
imply TPL_RAM
@@ -197,7 +197,7 @@ config ROCKCHIP_RK3328
select SPL
select SUPPORT_TPL
select TPL
select TPL_NEEDS_SEPARATE_STACK if TPL
select TPL_HAVE_INIT_STACK if TPL
imply ARMV8_CRYPTO
imply ARMV8_SET_SMPEN
imply MISC
@@ -225,7 +225,7 @@ config ROCKCHIP_RK3368
select ARM64
select SUPPORT_SPL
select SUPPORT_TPL
select TPL_NEEDS_SEPARATE_STACK if TPL
select TPL_HAVE_INIT_STACK if TPL
imply ROCKCHIP_COMMON_BOARD
imply SPL_ROCKCHIP_COMMON_BOARD
imply SPL_SEPARATE_BSS
@@ -257,7 +257,7 @@ config ROCKCHIP_RK3399
select SPL_RAM if SPL
select SPL_REGMAP if SPL
select SPL_SYSCON if SPL
select TPL_NEEDS_SEPARATE_STACK if TPL
select TPL_HAVE_INIT_STACK if TPL
select SPL_SEPARATE_BSS
select CLK
select FIT
@@ -392,7 +392,7 @@ config ROCKCHIP_RV1126
select SKIP_LOWLEVEL_INIT_ONLY
select TPL
select SUPPORT_TPL
select TPL_NEEDS_SEPARATE_STACK
select TPL_HAVE_INIT_STACK
select TPL_ROCKCHIP_BACK_TO_BROM
select SPL
select SUPPORT_SPL

View File

@@ -106,12 +106,6 @@ config TPL_LDSCRIPT
May be left empty to trigger the Makefile infrastructure to
fall back to the linker-script used for the SPL stage.
config TPL_NEEDS_SEPARATE_STACK
bool "TPL needs a separate initial stack-pointer"
help
Enable, if the TPL stage should not inherit its initial
stack-pointer from the settings for the SPL stage.
config TPL_POWER
bool "Support power drivers"
help
@@ -140,11 +134,18 @@ config TPL_MAX_SIZE
help
The maximum size (in bytes) of the TPL stage.
config TPL_STACK
hex "Address of the initial stack-pointer for the TPL stage"
depends on TPL_NEEDS_SEPARATE_STACK
config TPL_HAVE_INIT_STACK
bool "TPL requires a initial, fixed, stack-pointer location"
help
The address of the initial stack-pointer for the TPL stage.
Enable if the TPL phase should not inherit its initial
stack-pointer from the settings for U-Boot proper (or SPL if
SPL_STACK is defined), but should set its own value.
config TPL_STACK
hex "Address of the initial stack-pointer for the TPL phase"
depends on TPL_HAVE_INIT_STACK
help
The address of the initial stack-pointer for the TPL phase
Usually this will be the (aligned) top-of-stack.
config TPL_READ_ONLY

View File

@@ -48,7 +48,7 @@ CONFIG_SPL_NO_BSS_LIMIT=y
CONFIG_SPL_SEPARATE_BSS=y
CONFIG_SPL_FS_EXT4=y
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION=2
CONFIG_TPL_NEEDS_SEPARATE_STACK=y
CONFIG_TPL_HAVE_INIT_STACK=y
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set