Hi Antonio,
>>With uuuu.auto these changes were not needed as it booted automatically the image at the startup.
But I can set these environment variables on uuu script accordingly. is this correct ?
yes, right.
In addtion, you can also do like this according to your product.
---Setting all environments you need in u-boot source code, when u-boot runs, don't need to re-configure environments again.
--Setting evrionments manually.
>>With my signed bootloader image it uuu example_kernel_emmc still does not complete. After step 1 device reappears as FSL USB download gadget 0500 while I can see with the bootloader from the demo images it reappears as USB download gadget 0221, could this difference be meaningful ?
You can try the way:
See contents of example_kernel_emmc.uuu:
---------------
SDP: boot -f imx-boot-imx8mmevk-sd.bin-flash_evk # Load u-boot to DDR memory.
# This command will be run when use SPL
SDPU: write -f imx-boot-imx8mmevk-sd.bin-flash_evk -offset 0x57c00
SDPU: jump
# This command will be run when ROM support stream mode
# SDPS: boot -f _flash.bin
# use uboot burn bootloader to eMMC
# becaue difference chip, offset is difference
# you can use kernel to do that for specific boards
FB: ucmd setenv fastboot_dev mmc
FB: ucmd setenv mmcdev ${emmc_dev}
FB: flash bootloader imx-boot-imx8mmevk-sd.bin-flash_evk #use uboot burn bootloader to eMMC
FB: ucmd setenv emmc_cmd mmc partconf ${emmc_dev} 0 1 0;
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi
FB: ucmd setenv emmc_cmd mmc bootbus ${emmc_dev} 2 2 1;
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi
FB: ucmd setenv fastboot_buffer ${loadaddr}
FB: download -f Image-imx8mmevk.bin # Load kernal to DDR memeory
FB: ucmd setenv fastboot_buffer ${fdt_addr}
FB: download -f Image-fsl-imx8mm-evk.dtb # Load dtb to DDR memory
FB: ucmd setenv fastboot_buffer ${initrd_addr}
FB: download -f fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot # Load ramdisk to DDR memeory
#FB: ucmd setenv bootargs console=${console},${baudrate} earlycon=${earlycon},${baudrate}
FB: acmd ${kboot} ${loadaddr} ${initrd_addr} ${fdt_addr}
-----------------------------------------
The above command works like this.
uuu starts---->imx-boot-imx8mmevk-sd.bin-flash_evk to DDR memory--->run imx-boot-imx8mmevk-sd.bin-flash_evk in DDR memory---->write imx-boot-imx8mmevk-sd.bin-flash_evk to eMMC---->download Image-imx8mmevk.bin & Image-fsl-imx8mm-evk.dtb to DDR memory ---->download fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot to DDR memory.
Now the following images has been loaded into DDR and running:
---u-boot : imx-boot-imx8mmevk-sd.bin-flash_evk
---dtb: Image-fsl-imx8mm-evk.dtb
---kernel: Image-imx8mmevk.bin
---ramdisk: fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot
And imx-boot-imx8mmevk-sd.bin-flash_evk has been written to eMMC.
Up to now, a small linux system with ramdisk have been successfully run in DDR memory, which is very important. Because the small linux system will perform subsequent program work.
You can continue to read other commands after last line that I listed, those commands are all for writting you formal images( u-boot / dtb / kernel / rootfs) to eMMC.
so if you understand these script commands, you will know how to use the script.
Hope these descriptions are helpful for you!
Have a nice day!
B.R,
Weidong