Can't revert to Toradex referency image after installing custom yocto build

Hi,

while trying to reproduce this issue reported by my colleague on your reference image, I noticed that I can’t revert back to the Toradex images after we’ve installed our custom yocto build on the SoM. I thought loading TEZI to the SoM would revert everything to factory, but somehow our repartitioning of the SoM seems to have broken your installer.

Here’s what I did:

  1. Loaded TEZI to RAM and installed it to eMMC:

    Followed by power off

related output on serial console:

 U-Boot 2020.04-5.6.0+git.7d1febd4af77 (Mar 28 2022 - 16:22:11 +0000)CPU:   NXP i.MX8QM RevB A53 at 1200 MHzDRAM:  4 GiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC... *** Warning - bad CRC, using default environmentIn:    serial
Out:   serial
Err:   serial
Model: Toradex Apalis iMX8 QuadMax 4GB IT V1.1C, Serial# 06945064 BuildInfo:
  - SCFW 99e479ce, SECO-FW 2f7f6f59, IMX-MKIMAGE 8947fea3, ATF 835a8f6
  - U-Boot 2020.04-5.6.0+git.7d1febd4af77switch to partitions #0, OK
mmc0(part 0) is current device
Detect USB boot. Will enter fastboot mode!
Net:   eth0: ethernet@5b040000
Fastboot: Normal
Boot from USB for mfgtools
*** Warning - Use default environment for                                mfgtools
, using default environmentRun bootcmd_mfg: select_dt_from_module_version && fastboot 0
Hit any key to stop autoboot:  0
We are in is_imx8
Getting phy ctrl
Detect USB boot. Will enter fastboot mode!
Starting download of 3260 bytesdownloading of 3260 bytes finished
Detect USB boot. Will enter fastboot mode!
Starting download of 43 bytesdownloading of 43 bytes finished
Detect USB boot. Will enter fastboot mode!
Starting download of 106496 bytesdownloading of 106496 bytes finished
Detect USB boot. Will enter fastboot mode!
Starting download of 48193012 bytes
..........................................................................
..........................................................................
..........................................................................
..........................................................................
.......................................................................
downloading of 48193012 bytes finished
## Executing script at 82e00000
Loading hdp firmware from 0x000000009c000000 offset 0x0000000000002000
Loading hdp firmware Complete
Bootargs: quiet video=LVDS-1:d video=HDMI-A-1:640x480-16@60D initcall_blacklist=vpu_driver_init rootfstype=squashfs root=/dev/ram autoinstall clk_ignore_unused pci=nomsi
## Loading kernel from FIT Image at 8a000000 ...
   Using 'config@freescale_imx8qm-apalis-v1.1-eval.dtb' configuration
   Trying 'kernel@1' kernel subimage
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x8a000108
     Data Size:    10781184 Bytes = 10.3 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x96000000
     Entry Point:  0x96000000
     Hash algo:    sha1
     Hash value:   597016971ab14d4e90dde5f68803acc32513c845
   Verifying Hash Integrity ... sha1+ OK
## Loading ramdisk from FIT Image at 8a000000 ...
   Using 'config@freescale_imx8qm-apalis-v1.1-eval.dtb' configuration
   Trying 'ramdisk@1' ramdisk subimage
     Description:  tezi-initramfs
     Type:         RAMDisk Image
     Compression:  uncompressed
     Data Start:   0x8ab95a4c
     Data Size:    36040704 Bytes = 34.4 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0xa0000000
     Entry Point:  unavailable
     Hash algo:    sha1
     Hash value:   f6a05b54ec24573764ccc83225c66eab0cd1661a
   Verifying Hash Integrity ... sha1+ OK
   Loading ramdisk from 0x8ab95a4c to 0xa0000000
## Loading fdt from FIT Image at 8a000000 ...
   Using 'config@freescale_imx8qm-apalis-v1.1-eval.dtb' configuration
   Trying 'fdt@freescale_imx8qm-apalis-v1.1-eval.dtb' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x8aa99efc
     Data Size:    166524 Bytes = 162.6 KiB
     Architecture: AArch64
     Load Address: 0x87000000
     Hash algo:    sha1
     Hash value:   77611d9faeccca42c671df816250f05849591373
   Verifying Hash Integrity ... sha1+ OK
   Loading fdt from 0x8aa99efc to 0x87000000
## Loading fdt from FIT Image at 8a000000 ...
   Using 'config@apalis-imx8_hdmi_overlay.dtbo' configuration
   Trying 'fdt@apalis-imx8_hdmi_overlay.dtbo' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x8ab90cf0
     Data Size:    2177 Bytes = 2.1 KiB
     Architecture: AArch64
     Load Address: 0x870f0000
     Hash algo:    sha1
     Hash value:   aaf6a25c667de18d750f7b01d9cc322dbfeda54d
   Verifying Hash Integrity ... sha1+ OK
   Loading fdt from 0x8ab90cf0 to 0x870f0000
   Booting using the fdt blob at 0x87000000
   Uncompressing Kernel Image
   Loading Ramdisk to fb3ef000, end fd64e000 ... OK
   Loading Device Tree to 00000000fb3c3000, end 00000000fb3eea3f ... OKStarting kernel ...[    0.147035] No BMan portals available!
[    0.148240] No QMan portals available!
[    0.786377] imx-audmix imx-audmix.0: failed to find SAI platform device
[    0.875379] imx6q-pcie 5f000000.pcie: pcie_ext clock source missing or invalid
[    0.876586] imx6q-pcie 5f010000.pcie: pcie_ext clock source missing or invalid
[    1.324352] debugfs: Directory '59050000.sai' with parent 'apalis-imx8qm-sgtl5000' already present!
[    2.549853] imx6q-pcie 5f010000.pcie: failed to initialize host
[    2.555815] imx6q-pcie 5f010000.pcie: unable to add pcie port.
[    2.653924] imx6q-pcie 5f000000.pcie: failed to initialize host
[    2.659904] imx6q-pcie 5f000000.pcie: unable to add pcie port.
Running /etc/rc.local...
Toradex Easy Installer 5.6.0+build.9 ()
Starting udev
[    3.370371] debugfs: Directory '59090000.sai' with parent 'imx-audio-hdmi-tx' already present!
[    3.454067] debugfs: File 'Capture' in directory 'dapm' already present!
System time was Tue May 10 12:23:08 UTC 2022.
Setting the System Clock using the Hardware Clock as reference...
System Clock set. System local time is now Tue May 10 12:23:09 UTC 2022.Welcome to the Toradex Easy InstallerThis is a Linux based installer for Toradex modules. Currently, the installer
does not have a serial console interface. You can use the Toradex Easy Installer
via any of the available display interfaces using USB mouse/keyboard or via a
network connection using VNC. Use:
  # ip addr show
to display the Ethernet IP address(es) or use USB RNDIS at IP 192.168.11.1.Check our documentation at:
  https://developer.toradex.com/software/toradex-easy-installer
/ # [  181.753004] arm-smmu 51400000.iommu: removing device with active domains!
[  181.761860] reboot: Power down

Then I turned power on again:

U-Boot 2020.04 (Aug 20 2021 - 10:22:00 +0000)CPU:   NXP i.MX8QM RevB A53 at 1200 MHzDRAM:  4 GiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Model: Toradex Apalis iMX8 QuadMax 4GB IT V1.1C, Serial# 06945064 BuildInfo:
  - SCFW bc122ee1, SECO-FW d63fdb21, IMX-MKIMAGE 5138add7, ATF ec35fef
  - U-Boot 2020.04switch to partitions #0, OK
mmc0(part 0) is current device
Saving Environment to MMC... Writing to MMC(0)... OK
flash target is MMC:0
Net:   eth0: ethernet@540000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
** Unrecognized filesystem type **
## Executing script at 83100000
Wrong image format for "source" command
Apalis iMX8 #

I get exactly the same behaviour when I try to install a reference image instead of TEZI after loading TEZI to RAM.

Any idea what’s going wrong? I would have expected that I can recover a completely bricked module by loading TEZI over USB and then installing one of your reference images?

The question from my side, which option from that GUI is supposed to restore original bootloader image in the boot partition?

Hi @m.sauer Hi @UVV ,

at this point, I would try to “Erase Flash” and then flash TEZI into RAM.
From there, go as you did before and let me know what happens then.

Best Regards
Kevin

Using “Erase Flash” before installing the reference image did the trick. Thank you very much for the hint @kevin.tx !

1 Like