On 11/11/22, Fabio Estevam wrote: > Hi Oliver, > > On Fri, Nov 11, 2022 at 9:54 AM Oliver Graute <oliver.gra...@gmail.com> wrote: > > > imx8mm_evk_defconfig > > apalis-imx8_defconfig > > > > But where is the difference here? > > With the change below, the imx8qm_mek_defconfig builds without errors > in the absence of the blobs: > > diff --git a/arch/arm/dts/imx8qm-u-boot.dtsi b/arch/arm/dts/imx8qm-u-boot.dtsi > index 3507489a813c..442e64badc39 100644 > --- a/arch/arm/dts/imx8qm-u-boot.dtsi > +++ b/arch/arm/dts/imx8qm-u-boot.dtsi > @@ -50,7 +50,7 @@ > arch = "arm64"; > compression = "none"; > description = "U-Boot (64-bit)"; > - load = <CONFIG_SYS_TEXT_BASE>; > + load = <CONFIG_TEXT_BASE>; > type = "standalone"; > > uboot-blob { > diff --git a/arch/arm/dts/imx8qxp-u-boot.dtsi > b/arch/arm/dts/imx8qxp-u-boot.dtsi > index 01183f8ade63..e8df5bb8bfea 100644 > --- a/arch/arm/dts/imx8qxp-u-boot.dtsi > +++ b/arch/arm/dts/imx8qxp-u-boot.dtsi > @@ -50,7 +50,7 @@ > arch = "arm64"; > compression = "none"; > description = "U-Boot (64-bit)"; > - load = <CONFIG_SYS_TEXT_BASE>; > + load = <CONFIG_TEXT_BASE>; > type = "standalone"; > > uboot-blob { > diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig > index 4fc828681b6c..4c220188fbb6 100644 > --- a/configs/imx8qm_mek_defconfig > +++ b/configs/imx8qm_mek_defconfig > @@ -3,21 +3,12 @@ CONFIG_ARCH_IMX8=y > CONFIG_TEXT_BASE=0x80020000 > CONFIG_SYS_MALLOC_LEN=0x2400000 > CONFIG_SYS_MALLOC_F_LEN=0x8000 > -CONFIG_SPL_GPIO=y > -CONFIG_SPL_LIBCOMMON_SUPPORT=y > -CONFIG_SPL_LIBGENERIC_SUPPORT=y > CONFIG_NR_DRAM_BANKS=3 > CONFIG_ENV_SIZE=0x1000 > CONFIG_ENV_OFFSET=0x400000 > CONFIG_DM_GPIO=y > CONFIG_DEFAULT_DEVICE_TREE="fsl-imx8qm-mek" > -CONFIG_SPL_TEXT_BASE=0x100000 > CONFIG_TARGET_IMX8QM_MEK=y > -CONFIG_SPL_MMC=y > -CONFIG_SPL_SERIAL=y > -CONFIG_SPL_DRIVERS_MISC=y > -CONFIG_SPL=y > -CONFIG_SPL_LOAD_IMX_CONTAINER=y > CONFIG_IMX_CONTAINER_CFG="board/freescale/imx8qm_mek/uboot-container.cfg" > CONFIG_SYS_LOAD_ADDR=0x80280000 > CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y > @@ -32,22 +23,8 @@ CONFIG_USE_BOOTCOMMAND=y > CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run > loadbootscript; then run bootscript; else if test ${sec_boot} = yes; > then if run loadcntr; then run mmcboot; else run netboot; fi; else if > run loadimage; then run mmcboot; else run netboot; fi; fi; fi; else > booti ${loadaddr} - ${fdt_addr}; fi" > CONFIG_LOG=y > CONFIG_BOARD_EARLY_INIT_F=y > -CONFIG_SPL_MAX_SIZE=0x1f000 > -CONFIG_SPL_HAS_BSS_LINKER_SECTION=y > -CONFIG_SPL_BSS_START_ADDR=0x128000 > -CONFIG_SPL_BSS_MAX_SIZE=0x1000 > -CONFIG_SPL_BOARD_INIT=y > -CONFIG_SPL_SYS_MALLOC_SIMPLE=y > -# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set > -CONFIG_SPL_STACK=0x13e000 > -CONFIG_SYS_SPL_MALLOC=y > -CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y > -CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000 > -CONFIG_SYS_SPL_MALLOC_SIZE=0x3000 > CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y > CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800 > -CONFIG_SPL_POWER_DOMAIN=y > -CONFIG_SPL_WATCHDOG=y > CONFIG_HUSH_PARSER=y > CONFIG_SYS_CBSIZE=256 > CONFIG_SYS_PBSIZE=276 > @@ -66,14 +43,11 @@ CONFIG_CMD_MII=y > CONFIG_CMD_PING=y > CONFIG_CMD_CACHE=y > CONFIG_CMD_FAT=y > -CONFIG_SPL_OF_CONTROL=y > CONFIG_ENV_OVERWRITE=y > CONFIG_ENV_IS_IN_MMC=y > CONFIG_SYS_RELOC_GD_ENV_ADDR=y > CONFIG_SYS_MMC_ENV_DEV=1 > CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y > -CONFIG_SPL_DM=y > -CONFIG_SPL_CLK=y > CONFIG_CLK_IMX8=y > CONFIG_CPU=y > CONFIG_MXC_GPIO=y > @@ -93,16 +67,12 @@ CONFIG_FEC_MXC_MDIO_BASE=0x5B040000 > CONFIG_FEC_MXC=y > CONFIG_MII=y > CONFIG_PINCTRL=y > -CONFIG_SPL_PINCTRL=y > CONFIG_PINCTRL_IMX8=y > CONFIG_POWER_DOMAIN=y > CONFIG_IMX8_POWER_DOMAIN=y > CONFIG_DM_REGULATOR=y > -CONFIG_SPL_DM_REGULATOR=y > CONFIG_DM_REGULATOR_FIXED=y > CONFIG_DM_REGULATOR_GPIO=y > -CONFIG_SPL_DM_REGULATOR_GPIO=y > CONFIG_DM_SERIAL=y > CONFIG_FSL_LPUART=y > -CONFIG_SPL_TINY_MEMSET=y > # CONFIG_EFI_LOADER is not set > > I removed SPL support, which does not seems to be needed as the scufw > handles DDR init.
I know that DDR init is done in scfw for imx8qm. Because I patched these values gotten from a NXP Excel RPA sheet into our scfw a year ago as we got our Micron LPDDR4. But I wasn't aware that then the SPL stuff is superflous then. Is this really the case? Is there no other reason for SPL? Can you confirm? > > I don't have access to an imx8qm/qxp board here. > > Could you try removing SPL support from your board and see if it boots > with binman support? Ok, first I removed SPL Config for imx8qm_dmsse20 board posted here [1] Because this is my current develop setup. The imx8qm_rom7720 and cgt8mx will follow (perhaps next week). So this Board is booting without SPL. But I run into somme mmc issues. U-Boot 2023.01-rc1-00056-gb805f40911-dirty (Nov 18 2022 - 13:05:16 +0100) Model: Advantech iMX8QM DMSSE20 Board: DMS-SE20A1 8GB Build: SCFW 549b1e18, SECO-FW c9de51c0, ATF 5782363 Boot: USB DRAM: 8 GiB Core: 100 devices, 19 uclasses, devicetree: separate MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 Loading Environment from MMC... OK In: serial@5a060000 Out: serial@5a060000 Err: serial@5a060000 Net: Warning: ethernet@5b040000 (eth0) using random MAC address - 5a:25:75:2d:65:75 eth0: ethernet@5b040000 Warning: ethernet@5b050000 (eth1) using random MAC address - ca:41:6e:6d:75:10 , eth1: ethernet@5b050000 Hit any key to stop autoboot: 0 Card did not respond to voltage select! : -110 Card did not respond to voltage select! : -110 Card did not respond to voltage select! : -110 ** Bad device specification mmc 2 ** Couldn't find partition mmc 2:1 Can't set block device Card did not respond to voltage select! : -110 Card did not respond to voltage select! : -110 ** Bad device specification mmc 2 ** Couldn't find partition mmc 2:1 Can't set block device Wrong Image Format for bootm command ERROR: can't get kernel image! switch to partitions #0, OK mmc0(part 0) is current device [1] https://patchwork.ozlabs.org/project/uboot/patch/20221007131158.14094-1-oliver.gra...@kococonnector.com/ Best regards, Oliver