Hi!
I’m working on integrating an OTA solution (rauc
) to our custom yocto image, which is based on the txd-reference-minimal-image
BSP 5.5.0. I’m using a Toradex Apalis iMX8QM 4GB IT v1.1C
CoM with an Ixora carrier board.
We would like to support updating the U-Boot too, but it is clear that rauc is not suitable for this, and I have to do it with a custom script.
I can copy the imx-boot file to its place and load the default u-boot env values, but for some reason, this u-boot env does not match the one TEZI creates when installing the image. What I’m doing is:
- Wipe the
mmcblk0boot0
device except for the last 512 byte sectore where the Toradex config block is located. -
dd
theimx-boot
file to the beginning of themmcblk0boot0
device. - install the
u-boot-initial-env-sd
U-Boot environment withfw_setenv --config /etc/fw_env.config --script /home/root/u-boot-initial-env-sd
command as seen in this thread.
The device boots and everything works as expected, but the U-Boot env is not identical to the one I get after installing the image with TEZI, and since we’re running fitImage secure boot and redundant A-B boot logic I would not really like to mess with the U-Boot config more than I should.
I tried to use the default env (by running env default -a
as suggested in this thread, and also by leaving the U-Boot env empty altogether), but the default env is also different from the other two mentioned above. Even if I “update” it with the u-boot-initial-env-sd
, its still not the same.
My question is, exactly how does TEZI create the U-Boot env? Load the defaults hardcoded in the U-Boot binary, or load the u-boot-initial-env-sd
, or something else?
Can it be that the TEZI leaves some residue config from its own U-Boot config on the device as suggested in this thread?
Thanks!
Csongor