
Hi Fabio,
Am Do., 19. Aug. 2021 um 21:28 Uhr schrieb Fabio Estevam festevam@denx.de:
After the conversion to binman in commit 8996e6b7c6a1 ("imx8mm_evk: switch to use binman to pack images"), it is necessary to flash both flash.bin and u-boot.itb to get a bootable system. Prior to this commit, only flash.bin was needed.
Such new requirement breaks existing distro mechanisms to generate the final binary because the extra u-boot.itb is now required.
Generate a final flash.bin that can be used again as a single bootable binary to keep the original behavior.
After this change the SPL binary is called spl.bin, which is a more descriptive name for its purpose, and can still be used standalone (for example, for secure boot purposes).
Also update imx8mm_evk.rst to remove the u-boot.itb copy step.
Signed-off-by: Fabio Estevam festevam@denx.de Reviewed-by: Frieder Schrempf frieder.schrempf@kontron.de Reviewed-by: Heiko Schocher hs@denx.de
Signed-off-by: Fabio Estevam festevam@denx.de
Changes since v2:
- Change the LOADER to mkimage.spl.mkimage (Frieder)
arch/arm/dts/imx8mm-evk-u-boot.dtsi | 17 ++++++++++++++++- .../imx8mm_evk/imximage-8mm-lpddr4.cfg | 2 +- doc/board/freescale/imx8mm_evk.rst | 1 - 3 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/arch/arm/dts/imx8mm-evk-u-boot.dtsi b/arch/arm/dts/imx8mm-evk-u-boot.dtsi index f200afac9f..75cd59e545 100644 --- a/arch/arm/dts/imx8mm-evk-u-boot.dtsi +++ b/arch/arm/dts/imx8mm-evk-u-boot.dtsi @@ -150,7 +150,7 @@ };
flash {
spl { mkimage { args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x7e1000";
@@ -217,4 +217,19 @@ }; }; };
imx-boot {
filename = "flash.bin";
pad-byte = <0x00>;
spl: blob-ext@1 {
offset = <0x0>;
filename = "spl.bin";
};
uboot: blob-ext@2 {
offset = <0x57c00>;
filename = "u-boot.itb";
};
};
}; diff --git a/board/freescale/imx8mm_evk/imximage-8mm-lpddr4.cfg b/board/freescale/imx8mm_evk/imximage-8mm-lpddr4.cfg index b89092a559..2c15dbc413 100644 --- a/board/freescale/imx8mm_evk/imximage-8mm-lpddr4.cfg +++ b/board/freescale/imx8mm_evk/imximage-8mm-lpddr4.cfg @@ -6,4 +6,4 @@ #define __ASSEMBLY__
BOOT_FROM sd -LOADER mkimage.flash.mkimage 0x7E1000 +LOADER mkimage.spl.mkimage 0x7E1000 diff --git a/doc/board/freescale/imx8mm_evk.rst b/doc/board/freescale/imx8mm_evk.rst index 7fd3d72564..b377c4de27 100644 --- a/doc/board/freescale/imx8mm_evk.rst +++ b/doc/board/freescale/imx8mm_evk.rst @@ -50,7 +50,6 @@ Burn the flash.bin to MicroSD card offset 33KB: .. code-block:: bash
$sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=33 conv=notrunc
- $sudo dd if=u-boot.itb of=/dev/sdc bs=1024 seek=384 conv=sync
Boot
-- 2.25.1
When building from a clean checkout I see the following warnings. It seems that there are some dependency checks that are looking for the files in mkimage config file.
AR arch/arm/lib/lib.a AS arch/arm/lib/crt0_aarch64_efi.o CC arch/arm/lib/reloc_aarch64_efi.o WARNING 'mkimage.spl.mkimage' not found, resulting binary is not-functional AS arch/arm/mach-imx/imx8m/lowlevel_init.o CC arch/arm/mach-imx/imx8m/clock_slice.o CC arch/arm/mach-imx/imx8m/soc.o : : AS spl/arch/arm/lib/crt0_aarch64_efi.o CC spl/arch/arm/lib/reloc_aarch64_efi.o WARNING 'mkimage.spl.mkimage' not found, resulting binary is not-functional AS spl/arch/arm/mach-imx/imx8m/lowlevel_init.o CC spl/arch/arm/mach-imx/imx8m/clock_slice.o CC spl/arch/arm/mach-imx/imx8m/soc.o : : COPY spl/u-boot-spl.bin SYM spl/u-boot-spl.sym WARNING 'mkimage.spl.mkimage' not found, resulting binary is not-functional make[1]: Nothing to be done for 'SPL'. OBJCOPY u-boot.srec OBJCOPY u-boot-nodtb.bin