From d7116ca1d07a47901d5d8614110ad34c9e5600c3 Mon Sep 17 00:00:00 2001 From: "Derald D. Woods" Date: Sun, 15 May 2022 22:25:05 -0500 Subject: [PATCH] ARM: omap3: evm: Fix 'fitImage' booting This commit sets two additional variables in the default BOOTCOMMAND. Adding 'boot=mmc' and 'addr_fit=0x8b000000' removes the need for a special 'uEnv.txt' to be created. The 'addr_fit' variable is the key piece here. It is normally defined as 0x90000000, in the macro DEFAULT_FIT_TI_ARGS. For this OMAP34XX board, 0x8b000000 works without touching other varibles. This was tested with a 'fitImage' created using the following FIT source: ---------------------------------------------------------------------- /dts-v1/; / { description = "Simple image with single Linux kernel and FDT blob"; #address-cells = <1>; images { kernel { description = "Linux kernel: omap2plus"; data = /incbin/("./zImage"); type = "kernel"; arch = "arm"; os = "linux"; compression = "none"; load = <0x80008000>; entry = <0x80008000>; hash-1 { algo = "sha256"; }; }; fdt-omap3-evm.dtb { description = "FDT: omap3-evm.dtb"; data = /incbin/("./omap3-evm.dtb"); type = "flat_dt"; arch = "arm"; compression = "none"; load = <0x8ff00000>; hash-1 { algo = "sha256"; }; }; }; configurations { default = "conf-omap3-evm.dtb"; conf-omap3-evm.dtb { description = "Boot Linux kernel with FDT blob"; kernel = "kernel"; fdt = "fdt-omap3-evm.dtb"; }; }; }; ---------------------------------------------------------------------- Additionally, the default environment is now stored in "uboot.env" on the FAT partition of MMC '0'. Fixes: 11e2ab3f0b ("ARM: omap3: evm: Enable booting 'fitImage' with DEFAULT_FIT_TI_ARGS") Signed-off-by: Derald D. Woods --- configs/omap3_evm_defconfig | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig index 41b197ddc8..aa7a55e6a1 100644 --- a/configs/omap3_evm_defconfig +++ b/configs/omap3_evm_defconfig @@ -12,7 +12,7 @@ CONFIG_SPL=y CONFIG_DISTRO_DEFAULTS=y CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4020ff00 -CONFIG_BOOTCOMMAND="if test ${boot_fit} -eq 1; then run update_to_fit; fi; run envboot; run distro_bootcmd" +CONFIG_BOOTCOMMAND="if test ${boot_fit} -eq 1; then setenv boot mmc; setenv addr_fit 0x8b000000; run update_to_fit; run mmcboot; fi; run envboot; run distro_bootcmd" CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="omap3-evm.dtb" CONFIG_SYS_CONSOLE_INFO_QUIET=y @@ -55,7 +55,10 @@ CONFIG_OF_CONTROL=y CONFIG_SPL_OF_CONTROL=y CONFIG_OF_SPL_REMOVE_PROPS="clocks clock-names interrupt-parent" CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_NAND=y +CONFIG_ENV_IS_IN_FAT=y +CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" +CONFIG_SYS_RELOC_GD_ENV_ADDR=y +CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y CONFIG_VERSION_VARIABLE=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y