[PATCH 07/10] rockchip: px30-core-*: Use common bss and stack addresses
Kever Yang
kever.yang at rock-chips.com
Thu May 23 05:48:55 CEST 2024
On 2024/5/22 01:40, Quentin Schulz wrote:
> From: Quentin Schulz <quentin.schulz at cherry.de>
>
> U-Boot proper pre-reloc is currently running out of memory on PX30
> Ringneck and it is thus impossible to boot into U-Boot CLI. It is
> assumed the same problem can be seen on other PX30 boards though I
> cannot guarantee it since I don't have access to them.
>
> Fix this by migrating to the common bss and stack addresses for PX30,
> which drastically increases the size of the pre-reloc allocation pool (8
> times bigger now). The memory layout in SPL and U-Boot proper now
> match the other SoCs' using ROCKCHIP_COMMON_STACK_ADDR.
>
> Signed-off-by: Quentin Schulz <quentin.schulz at cherry.de>
Reviewed-by: Kever Yang <kever.yang at rock-chips.com>
Thanks,
- Kever
> ---
> configs/px30-core-ctouch2-of10-px30_defconfig | 18 +++---------------
> configs/px30-core-ctouch2-px30_defconfig | 18 +++---------------
> configs/px30-core-edimm2.2-px30_defconfig | 18 +++---------------
> 3 files changed, 9 insertions(+), 45 deletions(-)
>
> diff --git a/configs/px30-core-ctouch2-of10-px30_defconfig b/configs/px30-core-ctouch2-of10-px30_defconfig
> index 87a39e115df..dd005f20ff8 100644
> --- a/configs/px30-core-ctouch2-of10-px30_defconfig
> +++ b/configs/px30-core-ctouch2-of10-px30_defconfig
> @@ -2,27 +2,15 @@ CONFIG_ARM=y
> CONFIG_SKIP_LOWLEVEL_INIT=y
> CONFIG_COUNTER_FREQUENCY=24000000
> CONFIG_ARCH_ROCKCHIP=y
> -CONFIG_TEXT_BASE=0x00200000
> -CONFIG_SYS_MALLOC_F_LEN=0x2000
> -CONFIG_SPL_LIBCOMMON_SUPPORT=y
> -CONFIG_SPL_LIBGENERIC_SUPPORT=y
> CONFIG_NR_DRAM_BANKS=1
> -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x400000
> CONFIG_DEFAULT_DEVICE_TREE="px30-engicam-px30-core-ctouch2-of10"
> -CONFIG_SPL_TEXT_BASE=0x00000000
> CONFIG_DM_RESET=y
> CONFIG_ROCKCHIP_PX30=y
> +# CONFIG_TPL_ROCKCHIP_COMMON_BOARD is not set
> CONFIG_TARGET_PX30_CORE=y
> CONFIG_DEBUG_UART_CHANNEL=1
> -CONFIG_TPL_LIBGENERIC_SUPPORT=y
> +# CONFIG_TPL_LIBCOMMON_SUPPORT is not set
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_STACK_R_ADDR=0x600000
> -CONFIG_SPL_STACK=0x400000
> -CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x4000000
> -CONFIG_SPL_BSS_MAX_SIZE=0x4000
> -CONFIG_SPL_STACK_R=y
> CONFIG_DEBUG_UART_BASE=0xFF160000
> CONFIG_DEBUG_UART_CLOCK=24000000
> CONFIG_SYS_LOAD_ADDR=0x800800
> @@ -40,9 +28,9 @@ CONFIG_SPL_MAX_SIZE=0x20000
> CONFIG_SPL_PAD_TO=0x7f8000
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> -# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> CONFIG_SPL_ATF=y
> # CONFIG_TPL_FRAMEWORK is not set
> +# CONFIG_TPL_SYS_MALLOC_SIMPLE is not set
> # CONFIG_TPL_BANNER_PRINT is not set
> # CONFIG_CMD_BOOTD is not set
> # CONFIG_CMD_ELF is not set
> diff --git a/configs/px30-core-ctouch2-px30_defconfig b/configs/px30-core-ctouch2-px30_defconfig
> index 7162c117beb..f6559fbae3a 100644
> --- a/configs/px30-core-ctouch2-px30_defconfig
> +++ b/configs/px30-core-ctouch2-px30_defconfig
> @@ -2,27 +2,15 @@ CONFIG_ARM=y
> CONFIG_SKIP_LOWLEVEL_INIT=y
> CONFIG_COUNTER_FREQUENCY=24000000
> CONFIG_ARCH_ROCKCHIP=y
> -CONFIG_TEXT_BASE=0x00200000
> -CONFIG_SYS_MALLOC_F_LEN=0x2000
> -CONFIG_SPL_LIBCOMMON_SUPPORT=y
> -CONFIG_SPL_LIBGENERIC_SUPPORT=y
> CONFIG_NR_DRAM_BANKS=1
> -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x400000
> CONFIG_DEFAULT_DEVICE_TREE="px30-engicam-px30-core-ctouch2"
> -CONFIG_SPL_TEXT_BASE=0x00000000
> CONFIG_DM_RESET=y
> CONFIG_ROCKCHIP_PX30=y
> +# CONFIG_TPL_ROCKCHIP_COMMON_BOARD is not set
> CONFIG_TARGET_PX30_CORE=y
> CONFIG_DEBUG_UART_CHANNEL=1
> -CONFIG_TPL_LIBGENERIC_SUPPORT=y
> +# CONFIG_TPL_LIBCOMMON_SUPPORT is not set
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_STACK_R_ADDR=0x600000
> -CONFIG_SPL_STACK=0x400000
> -CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x4000000
> -CONFIG_SPL_BSS_MAX_SIZE=0x4000
> -CONFIG_SPL_STACK_R=y
> CONFIG_DEBUG_UART_BASE=0xFF160000
> CONFIG_DEBUG_UART_CLOCK=24000000
> CONFIG_SYS_LOAD_ADDR=0x800800
> @@ -40,9 +28,9 @@ CONFIG_SPL_MAX_SIZE=0x20000
> CONFIG_SPL_PAD_TO=0x7f8000
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> -# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> CONFIG_SPL_ATF=y
> # CONFIG_TPL_FRAMEWORK is not set
> +# CONFIG_TPL_SYS_MALLOC_SIMPLE is not set
> # CONFIG_TPL_BANNER_PRINT is not set
> # CONFIG_CMD_BOOTD is not set
> # CONFIG_CMD_ELF is not set
> diff --git a/configs/px30-core-edimm2.2-px30_defconfig b/configs/px30-core-edimm2.2-px30_defconfig
> index 1182f60358f..a099e9378c9 100644
> --- a/configs/px30-core-edimm2.2-px30_defconfig
> +++ b/configs/px30-core-edimm2.2-px30_defconfig
> @@ -2,27 +2,15 @@ CONFIG_ARM=y
> CONFIG_SKIP_LOWLEVEL_INIT=y
> CONFIG_COUNTER_FREQUENCY=24000000
> CONFIG_ARCH_ROCKCHIP=y
> -CONFIG_TEXT_BASE=0x00200000
> -CONFIG_SYS_MALLOC_F_LEN=0x2000
> -CONFIG_SPL_LIBCOMMON_SUPPORT=y
> -CONFIG_SPL_LIBGENERIC_SUPPORT=y
> CONFIG_NR_DRAM_BANKS=1
> -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x400000
> CONFIG_DEFAULT_DEVICE_TREE="px30-engicam-px30-core-edimm2.2"
> -CONFIG_SPL_TEXT_BASE=0x00000000
> CONFIG_DM_RESET=y
> CONFIG_ROCKCHIP_PX30=y
> +# CONFIG_TPL_ROCKCHIP_COMMON_BOARD is not set
> CONFIG_TARGET_PX30_CORE=y
> CONFIG_DEBUG_UART_CHANNEL=1
> -CONFIG_TPL_LIBGENERIC_SUPPORT=y
> +# CONFIG_TPL_LIBCOMMON_SUPPORT is not set
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_STACK_R_ADDR=0x600000
> -CONFIG_SPL_STACK=0x400000
> -CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x4000000
> -CONFIG_SPL_BSS_MAX_SIZE=0x4000
> -CONFIG_SPL_STACK_R=y
> CONFIG_DEBUG_UART_BASE=0xFF160000
> CONFIG_DEBUG_UART_CLOCK=24000000
> CONFIG_SYS_LOAD_ADDR=0x800800
> @@ -40,9 +28,9 @@ CONFIG_SPL_MAX_SIZE=0x20000
> CONFIG_SPL_PAD_TO=0x7f8000
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> -# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> CONFIG_SPL_ATF=y
> # CONFIG_TPL_FRAMEWORK is not set
> +# CONFIG_TPL_SYS_MALLOC_SIMPLE is not set
> # CONFIG_TPL_BANNER_PRINT is not set
> # CONFIG_CMD_BOOTD is not set
> # CONFIG_CMD_ELF is not set
>
More information about the U-Boot
mailing list