
Hi Masahiro
On 21/09/23 21:06, Masahiro Yamada wrote:
Hi.
Since the TI platform migrated to binman, u-boot.img is built twice.
It is created by "mkimage -E", then overwritten by binman.
So, the data are embedded in the FIT structure instead of being appended.
Is this intentional?
To me, it looks weird.
I haven't added the fit,external-offset property in the binman.dtsi so it was not appended as external data and I did not find reason to. Is there any benefit in having the data appended than embedded?
To confirm it, apply the following hack.
Since u-boot.img is overwritten by binman, copy it to u-boot.img.backup.
diff --git a/Makefile b/Makefile index 87f9fc786e..4cffa8a061 100644 --- a/Makefile +++ b/Makefile @@ -1112,6 +1112,7 @@ endef # Timestamp file to make sure that binman always runs .binman_stamp: $(INPUTS-y) FORCE ifeq ($(CONFIG_BINMAN),y)
endif @touch $@cp u-boot.img u-boot.img.backup $(call if_changed,binman)
Then, build it for the main core.
make -j$(nproc) CROSS_COMPILE=aarch64-linux-gnu- am64x_evm_a53_defconfig all TEE=~/ref/OP-TEE/optee_os/out/arm-plat-k3/core/tee-raw.bin BL31=~/ref/trusted-firmware-a/build/k3/lite/release/bl31.bin BINMAN_INDIRS=~/ref/ti-linux-firmware
Compare the two files. Run fdtdump to see what happened to them.
$ diff -u u-boot.img u-boot.img.backup Binary files u-boot.img and u-boot.img.backup differ
$ fdtdump u-boot.img => u-boot and dt are embedded.
$ fdtdump u-boot.img.backup => u-boot and dt are appended after the FIT structure