[PATCH 02/31] rockchip: rk3399-ficus: Enable TPL and use common bss and stack addr

Jonas Karlman jonas at kwiboo.se
Tue Apr 2 15:47:23 CEST 2024


Hi Quentin,

On 2024-04-02 15:10, Quentin Schulz wrote:
> Hi Jonas,
> 
> On 3/31/24 22:28, Jonas Karlman wrote:
>> The rk3399-ficus board is only using SPL and not TPL+SPL like all other
>> RK3399 boards, chromebook bob/kevin excluded. It does not seem to be any
>> technical reason why this board was left using only SPL.
>>
>> Switch to use TPL+SPL and use common bss and stack addresses to allow
>> for more options to be enabled in a future patch. Also add the missing
>> DEFAULT_FDT_FILE option.
>>
>> Signed-off-by: Jonas Karlman <jonas at kwiboo.se>
>> ---
>>   configs/ficus-rk3399_defconfig | 14 ++------------
>>   1 file changed, 2 insertions(+), 12 deletions(-)
>>
>> diff --git a/configs/ficus-rk3399_defconfig b/configs/ficus-rk3399_defconfig
>> index 4859042d6b56..3bcd0fd66b91 100644
>> --- a/configs/ficus-rk3399_defconfig
>> +++ b/configs/ficus-rk3399_defconfig
>> @@ -2,32 +2,22 @@ CONFIG_ARM=y
>>   CONFIG_SKIP_LOWLEVEL_INIT=y
>>   CONFIG_COUNTER_FREQUENCY=24000000
>>   CONFIG_ARCH_ROCKCHIP=y
>> -CONFIG_TEXT_BASE=0x00200000
>> -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
>> -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x300000
>>   CONFIG_SF_DEFAULT_SPEED=20000000
>>   CONFIG_ENV_OFFSET=0x3F8000
>>   CONFIG_DEFAULT_DEVICE_TREE="rk3399-ficus"
>> -CONFIG_SPL_TEXT_BASE=0xff8c2000
>>   CONFIG_ROCKCHIP_RK3399=y
>> -CONFIG_ROCKCHIP_SPL_RESERVE_IRAM=0x4000
>>   CONFIG_TARGET_ROCK960_RK3399=y
>> -CONFIG_SPL_STACK=0xff8effff
>>   CONFIG_DEBUG_UART_BASE=0xFF1A0000
>>   CONFIG_DEBUG_UART_CLOCK=24000000
>>   CONFIG_SYS_LOAD_ADDR=0x800800
>>   CONFIG_DEBUG_UART=y
>> +CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-ficus.dtb"
>>   CONFIG_DISPLAY_BOARDINFO_LATE=y
>>   CONFIG_SPL_MAX_SIZE=0x2e000
>>   CONFIG_SPL_PAD_TO=0x7f8000
>> -CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
>> -CONFIG_SPL_BSS_START_ADDR=0xff8e0000
>> -CONFIG_SPL_BSS_MAX_SIZE=0x10000
>>   # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>> -# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
>> -CONFIG_SPL_STACK_R=y
>> -CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>>   CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
>> +CONFIG_TPL=y
>>   CONFIG_CMD_BOOTZ=y
>>   CONFIG_CMD_GPT=y
>>   CONFIG_CMD_MMC=y
> 
> I think we want to move CONFIG_SPL_STACK to match other RK3399 devices 
> as well?

This patch also drops SPL_SHARES_INIT_SP_ADDR and other bss + stack
related options, so new safe default bss and stack addresses from [1]
is used after this patch.

[1] https://source.denx.de/u-boot/u-boot/-/commit/008ba0d56d002f550570faa76c475290ac72721a

Regards,
Jonas

> 
> Indeed, it is currently set to 0xff8effff which matches the default 
> value for when TPL was NOT enabled. 0x400000 is used for devices with 
> TPL support. c.f. 
> https://source.denx.de/u-boot/u-boot/-/commit/f113d7d3034672de7d074506a05a7055f1f0dcae
> 
> Cheers,
> Quentin



More information about the U-Boot mailing list