Verdin iMX8MP + Mallow Carrier Board SPL: failed to boot from all boot devices

I’m working with a Verdin iMX8MP 8G WB IT + Mallow Carrier Board
I confirmed that the system boots normally, but after running the following command, the issue below occurred.

mmc bootbus 2 2 0 0
mmc partconf 2 1 1 1

U-Boot SPL 2024.07-7.3.0-devel+git.3f772959501c (Nov 09 2025 - 23:31:46 +0000)
DDR configured as dual rank
SEC0: RNG instantiated
Normal Boot
WDT: Started watchdog@30280000 with servicing every 1000ms (60s timeout)
Trying to boot from BOOTROM
Boot Stage: Primary boot
Can’t found uboot image in 640K range
SPL: failed to boot from all boot devices

ERROR ### Please RESET the board

   or 

not booting

I modified the commands above and tried to boot again, but it still fails to start.
Is there any way to recover it?

Best Regards,
sangyyoon

Hi, I’m the Toradex AI Assistant.

I might make mistakes or occasionally get you wrong. Our support team will step in if needed.


I understand you’re experiencing boot failures after running MMC configuration commands on your Verdin iMX8M Plus with Mallow Carrier Board. This is a critical issue that requires recovery mode to restore functionality.

Recovery Solution

Enter Recovery Mode

Your module can be recovered using the Toradex Easy Installer through recovery mode (1). For your specific configuration (Verdin iMX8M Plus + Mallow Carrier Board), you’ll need to:

  1. Access Recovery Mode: Use the recovery mode procedure for your specific module and carrier board combination (1)

  2. Load Toradex Easy Installer: Once in recovery mode, you can load TEZI through the USB OTG interface (1):

$ cd <unzipped directory>  
$ ./recovery-linux.sh  

(1)

USB Connection Details

The Mallow carrier board incorporates a USB-C connector (X8) linked to the Verdin USB_1 port, which is primarily utilized in recovery mode to enable software loading onto the module (2). This port operates as a dual-role-port (DRP) for both host and client functions (2).

Understanding the Issue

The MMC commands you ran (mmc bootbus and mmc partconf) modified the eMMC boot configuration, which likely caused the boot failure you’re experiencing. These commands alter how the module attempts to boot from the eMMC storage.

Recovery Process

  1. Enter Recovery Mode: Follow the recovery mode procedure for Verdin iMX8M Plus with Mallow Carrier Board
  2. Connect via USB-C: Use the USB-C connector (X8) on the Mallow board (2)
  3. Load TEZI: Use the recovery script to load Toradex Easy Installer
  4. Reinstall Image: Flash a fresh Torizon OS image to restore proper boot configuration

The recovery mode will bypass the corrupted boot configuration and allow you to restore your module to a working state.

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

I erased all areas of the eMMC and attempted recovery mode several times.
When checking the boot area, the imx-boot image appears to have been written correctly.

I’m wondering if there is any other way to recover it.

We have observed that the system occasionally boots successfully when the mmc partconf 2 0 2 0 setting is applied.
The following log shows the configuration during a normal boot.

U-Boot SPL 2024.07-7.4.0+git.3f772959501c (Jul 01 2024 - 18:07:18 +0000)
DDR configured as dual rank
SEC0: RNG instantiated
Normal Boot
WDT: Started watchdog@30280000 with servicing every 1000ms (60s timeout)
Trying to boot from BOOTROM
Boot Stage: Secondary boot
image offset 0x0, pagesize 0x200, ivt offset 0x0
NOTICE: Do not release JR0 to NS as it can be used by HAB
NOTICE: BL31: v2.10.0 (release):lf-6.6.52-2.2.1-dirty
NOTICE: BL31: Built : 06:40:36, Jul 7 2025

U-Boot 2024.07-7.4.0+git.3f772959501c (Jul 01 2024 - 18:07:18 +0000)

CPU: Freescale i.MX8MP[8] rev1.1 1600 MHz (running at 1200 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 44C
Reset cause: POR
DRAM: 8 GiB
Core: 177 devices, 31 uclasses, devicetree: separate
WDT: Started watchdog@30280000 with servicing every 1000ms (60s timeout)
MMC: FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC… Reading from MMC(2)… OK
In: serial@30880000
Out: serial@30880000
Err: serial@30880000
Model: Toradex 0070 Verdin iMX8M Plus Quad 8GB WB IT V1.1A
Serial#: 15722067
Carrier: Toradex UNKNOWN CARRIER BOARD V1.1C, Serial# 12867636
SEC0: RNG instantiated
Setting variant to wifi
Net: pca953x gpio-expander@21: Error reading output register
eth1: ethernet@30be0000, eth0: ethernet@30bf0000 [PRIME]
Hit any key to stop autoboot: 0
Verdin iMX8MP # mmc partconf 2
EXT_CSD[179], PARTITION_CONFIG:
BOOT_ACK: 0x0
BOOT_PARTITION_ENABLE: 0x2
PARTITION_ACCESS: 0x0

However, since the boot process does not work reliably after each reboot, we would like to ask if there is a way to make the boot process stable and consistent.

Please let us know if you have any suggestions or additional steps to ensure proper booting every time.

Hi @sangyoon!

I’m not sure if I fully understand the issue you were having.

Could you please give more details about what you’re trying to achieve?

As the Toradex AI mentioned, you can put your module in Recovery Mode and flash the image by following the instructions in this article.

Best regards.