Flash Yocto WC image on IMX8M Mini with uuu

Hi,

I’m trying to flash my Yocto build on verdin-imx8mm with uuu.
I already flash multiple times this build with Tezi and this work fine.
I’m on a Dahlia devboard.
I downloaded the last version of uuu from git (1.4.193)

I first used the following uuu script to flash the bootloader and WIC image on the sd_card.
This script was in part inspired from the uuu script of tezi.

uuu_version 1.4.193

# Load bootloader image into RAM over SDP
SDP: boot -f imx-boot-tezi

CFG: SDPU: -vid 0x0525 -pid 0xb4a4
SDPV: delay 1000
SDPV: write -f imx-boot-tezi -skipspl
SDPV: jump

CFG: FB: -vid 0x0525 -pid 0x4000
CFG: FB: -vid 0x0525 -pid 0x4037
CFG: FB: -vid 0x0525 -pid 0x4039
CFG: FB: -vid 0x0525 -pid 0x403b
CFG: FB: -vid 0x0525 -pid 0x403c

# mmcdev 0 is internal emmc 
# mmcdev 1 is SD card 
FB: ucmd setenv fastboot_dev mmc
FB: ucmd setenv emmc_dev 1
FB: ucmd setenv mmcdev ${emmc_dev}
FB: ucmd mmc dev ${emmc_dev}

FB: flash bootloader imx-boot-custom
FB: flash -raw2sparse all image.wic
FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi;
FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0
FB: done

imx-boot-tezi : is the imx-boot shipped with toradex easy installer.
imx-boot-custom: is the one generated by my yocto build.
image.wic : is the generated wic image.

This seem to have worked, since i found all the modifications I made on the running linux and I found these files on my SD card.

Then I tried to flash the internal emmc by setting emmc_dev to 0.
This break the boot process.
Even if I boot on Tezi and flash my image the old way that was always working I get nothing, no u-boot log, just a blank terminal.

I there some procedures I can try to repair the boot ?
What was wrong in my uuu script ?

Hi @neunz ,

Thanks for reaching out to Toradex.

First, we would like to ask you for the reason you are not using Tezi to flash it.
As you reported this apparently never posed a problem, we are curious to know why you’re trying to avoid it.
Is there a feature in Tezi missing that Toradex could add in the future?

You can use the recovery mode explained in our article here. By installing a working image (for example Toradex Easy Installer) into flash, the module should work again.

Best Regards
Kevin

I try the recovery mode and installing Tezi but I still can’t boot my board.
The process seem to go well until the end when I checked on the GUI with VNC.
Is it possible uuu modified a part in memory that are not overrided by an image ?

The reason we don’t want to use Tezi is that it’s good for one or two board but not if you have a lot of boards.
I don’t want to connect everytime to the GUI to check if the board was properly flashed.
I would like to control Tezi over serial command line to automate the process.

uuu feels like the good way to do this.
Is it any hardware limitation that make impossible to use uuu with verdin-IMX8MM ?

Hi @neunz !

I would like to ask you to take a look at the Auto Installation feature of Toradex Easy Installer. Using this allows you to perform an unattended installation.

The Auto-Reboot strategy might also be of your interest.

To check if the installation was successful, as you already have serial communication with the devices, you can check the boot process of Linux to validate the success.

Would this method be helpful?

Best regards,

I already use Auto Installation that was really useful.

I just found that there is a command line tools on Tezi that do what I want :
tezictl image-install

I think I can found my way with that.
Thank you for your time.

I have one last question :
Do you have any clue of what can have been modified by uuu that make the verdin unable to boot ?

Hi @neunz !

I am not sure what might have happened in your case.

I see that you are using partconf, which seems to be a one-time-only command that does the partitioning. If this is not done right, it might render the module unusable.

Best regards,

Hi @neunz !

Please be aware that the current state of tezictl tool is not meant to be used in production, as it was developed for internal Toradex use.

Best regards,

Hi @neunz !

Were you able to solve your issue?

If it is solved, could you please mark the related answer as the solution?

Best regards,

Hi,

Sorry for the delay.
Yes thank you this command solved the problem:

mmc partconf 0 1 1 0 

BOOT_ACK was not set.