I have created my own custom image based on the toradex multimedia reference image. I want to update u-boot, but I’m very confused on how to actually push my code to my board for the test process. Adding the changes to the yocto image seems straightforward, but I’d like to test the changes I make to the u-boot source before patching it. For reference, I’m trying to update GPIOs to startup low from u-boot based on this article (last section).
I followed the instructions from this u-boot build guide. I got through all the steps and created the flash.bin/imx-boot. I now want to push this to my SD card instead of the boot partition which comes with the .wic file that my custom image creates.
I tried pushing the flash.bin with dd to the boot partition on my SD card with the wic preloaded. This didn’t work, and just corrupted the whole SD card. The board could not boot from it.
I see that several other people have asked similar questions. I think that I have some misunderstandings about what is actually being built by imx-mkimage and how I need to add this to my sd card. What is included in this flash.bin file?
It seems that all the guides need me to update this via Tezi? I’m not sure why that is; if I could update what I needed from Yocto then I shouldn’t need to modify anything in the eMMC on the board, right? From what I can tell, imx-mkimage should have build the SECO, SCFW, ATF, and U-Boot into a single binary. Is that correct?
Also, what is UUU and do I need to use it to update my SD card? It seems like it’s a utility to update the eMMC on the board, but again I shouldn’t need to do that. The documentation for this tool from NXP is confusing as to what it actually does.
I’ve included my imx-boot if that’s of any help to anyone.
flash.bin (1.1 MB)
Resources I used:
- Ch. 4.3, 4.4.1.1, and 4.5.13 NXP Linux User’s Guide
- NXP imx-mkimage guide
- NXP Forum Adding Custom boot to wic
My Hardware:
- Toradex Colibri iMX8QXP
- Yocto Version: Scarthgap
- uname -r: 6.6.101-7.4.0-devel
Any help is much appreciated. Thanks!