On Sat, Oct 22, 2022 at 6:44 AM Adam Ford <aford...@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 <aford...@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