[PATCH V2 1/4] configs: imx8mn_beacon: Re-align memory to standard imx8mn settings
Tim Harvey
tharvey at gateworks.com
Mon Oct 24 23:36:06 CEST 2022
On Sat, Oct 22, 2022 at 6:44 AM Adam Ford <aford173 at gmail.com> wrote:
>
> The imx8mn_beacon board does not use the same memory map as the reference
> design from NXP or other imx8mn boards. As such, memory is more limited
> in SPL.
>
> Moving SPL_BSS_START_ADDR and SPL_STACK to default locations increases
> the amount of available meory for the SPL stack. Doing this allows
> the board to no longer define CONFIG_MALLOC_F_ADDR.
>
> Since SYS_LOAD_ADDR also does not align with other boards, move it too.
>
> Signed-off-by: Adam Ford <aford173 at gmail.com>
> ---
> V2:
> Rebase on u-boot-imx
>
> Depends on:
> https://patchwork.ozlabs.org/project/uboot/list/?series=324057
> https://patchwork.ozlabs.org/project/uboot/list/?series=312020
>
> diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
> index 613945a9ec..5708ba5c69 100644
> --- a/configs/imx8mn_beacon_2g_defconfig
> +++ b/configs/imx8mn_beacon_2g_defconfig
> @@ -16,10 +16,9 @@ CONFIG_IMX8MN_BEACON_2GB_LPDDR=y
> CONFIG_SYS_PROMPT="u-boot=> "
> CONFIG_SPL_SERIAL=y
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_SYS_MALLOC_F_LEN=0x2000
> CONFIG_SPL=y
> CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x48000000
> -CONFIG_SYS_LOAD_ADDR=0x40480000
> +CONFIG_SYS_LOAD_ADDR=0x42000000
> CONFIG_SYS_MEMTEST_START=0x40000000
> CONFIG_SYS_MEMTEST_END=0x44000000
> CONFIG_LTO=y
> @@ -35,12 +34,12 @@ CONFIG_DEFAULT_FDT_FILE="imx8mn-beacon-kit.dtb"
> CONFIG_ARCH_MISC_INIT=y
> CONFIG_SPL_MAX_SIZE=0x25000
> CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x95e000
> +CONFIG_SPL_BSS_START_ADDR=0x950000
> CONFIG_SPL_BSS_MAX_SIZE=0x2000
> CONFIG_SPL_BOARD_INIT=y
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> -CONFIG_SPL_STACK=0x187ff0
> +CONFIG_SPL_STACK=0x980000
> CONFIG_SYS_SPL_MALLOC=y
> CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
> CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
> diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
> index cc1583524b..0793db0bd6 100644
> --- a/configs/imx8mn_beacon_defconfig
> +++ b/configs/imx8mn_beacon_defconfig
> @@ -15,10 +15,9 @@ CONFIG_TARGET_IMX8MN_BEACON=y
> CONFIG_SYS_PROMPT="u-boot=> "
> CONFIG_SPL_SERIAL=y
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_SYS_MALLOC_F_LEN=0x2000
> CONFIG_SPL=y
> CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x48000000
> -CONFIG_SYS_LOAD_ADDR=0x40480000
> +CONFIG_SYS_LOAD_ADDR=0x42000000
> CONFIG_SYS_MEMTEST_START=0x40000000
> CONFIG_SYS_MEMTEST_END=0x44000000
> CONFIG_LTO=y
> @@ -34,12 +33,12 @@ CONFIG_DEFAULT_FDT_FILE="imx8mn-beacon-kit.dtb"
> CONFIG_ARCH_MISC_INIT=y
> CONFIG_SPL_MAX_SIZE=0x25000
> CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x95e000
> +CONFIG_SPL_BSS_START_ADDR=0x950000
> CONFIG_SPL_BSS_MAX_SIZE=0x2000
> CONFIG_SPL_BOARD_INIT=y
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> -CONFIG_SPL_STACK=0x187ff0
> +CONFIG_SPL_STACK=0x980000
> CONFIG_SYS_SPL_MALLOC=y
> CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
> CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
> diff --git a/configs/imx8mn_beacon_fspi_defconfig b/configs/imx8mn_beacon_fspi_defconfig
> index ecaefd8930..6da2182eb3 100644
> --- a/configs/imx8mn_beacon_fspi_defconfig
> +++ b/configs/imx8mn_beacon_fspi_defconfig
> @@ -14,10 +14,9 @@ CONFIG_SPL_TEXT_BASE=0x912000
> CONFIG_TARGET_IMX8MN_BEACON=y
> CONFIG_SPL_SERIAL=y
> CONFIG_SPL_DRIVERS_MISC=y
> -CONFIG_SPL_SYS_MALLOC_F_LEN=0x2000
> CONFIG_SPL=y
> CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x48000000
> -CONFIG_SYS_LOAD_ADDR=0x40480000
> +CONFIG_SYS_LOAD_ADDR=0x42000000
> CONFIG_SYS_MEMTEST_START=0x40000000
> CONFIG_SYS_MEMTEST_END=0x44000000
> CONFIG_LTO=y
> @@ -33,12 +32,12 @@ CONFIG_DEFAULT_FDT_FILE="imx8mn-beacon-kit.dtb"
> CONFIG_ARCH_MISC_INIT=y
> CONFIG_SPL_MAX_SIZE=0x25000
> CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> -CONFIG_SPL_BSS_START_ADDR=0x95e000
> +CONFIG_SPL_BSS_START_ADDR=0x950000
> CONFIG_SPL_BSS_MAX_SIZE=0x2000
> CONFIG_SPL_BOARD_INIT=y
> CONFIG_SPL_BOOTROM_SUPPORT=y
> # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> -CONFIG_SPL_STACK=0x187ff0
> +CONFIG_SPL_STACK=0x980000
> CONFIG_SYS_SPL_MALLOC=y
> CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
> CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
> diff --git a/include/configs/imx8mn_beacon.h b/include/configs/imx8mn_beacon.h
> index 6faecbde77..930b11b75e 100644
> --- a/include/configs/imx8mn_beacon.h
> +++ b/include/configs/imx8mn_beacon.h
> @@ -13,14 +13,6 @@
> #define CONFIG_SYS_UBOOT_BASE \
> (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
> -#ifdef CONFIG_SPL_BUILD
> -/* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
> -#define CONFIG_MALLOC_F_ADDR 0x184000
> -
> -/* For RAW image gives a error info not panic */
> -
> -#endif /* CONFIG_SPL_BUILD */
> -
> /* Initial environment variables */
> #define CONFIG_EXTRA_ENV_SETTINGS \
> "script=boot.scr\0" \
> --
> 2.34.1
>
Adam,
Have you evaluated getting rid of CONFIG_MALLOC_F_ADDR from the
various imx8mm includes?
It seems like there is a lot of commonality that could be applied to
the various defconfig and include/configs for the imx8mm/n/p boards.
Best Regards,
Tim
More information about the U-Boot
mailing list