Flash u-boot on colibri imx8x

I understand you’ve narrowed down the issue to the U-Boot binary itself. Since your minimal string change causes the boot failure, there are several potential causes related to the binary format or flashing process for the Colibri iMX8X.

Binary Format Verification

For i.MX8X modules, the correct binary format is crucial. Your use of imx-boot-colibri-imx8x-sd.bin-flash suggests you’re using the correct binary, but let’s verify the flashing process (1).

Potential Issues with Your Flashing Method

1. Boot Partition Configuration

Your command sequence shows:

mmc partconf 0 1 1 1

This sets the eMMC boot partition configuration. However, for i.MX8X, the boot process is more complex and involves multiple components (1).

2. Offset and Size Considerations

You’re writing to offset 0x0, but i.MX8X may require specific offset handling. The boot process involves multiple stages including SCFW, SECO-FW, and ATF as shown in your boot log (1).

Recommended Troubleshooting Steps

1. Verify Binary Integrity

Check if your Yocto build produced the correct binary format:

# Check the file size and format
ls -la deploy/images/colibri-imx8x/imx-boot-colibri-imx8x-sd.bin-flash
file deploy/images/colibri-imx8x/imx-boot-colibri-imx8x-sd.bin-flash

2. Compare with Working Binary

Compare your modified binary with the original working one:

# Compare file sizes
ls -la original_binary modified_binary
# Compare checksums if sizes match
md5sum original_binary modified_binary

3. Alternative Flashing Method

Instead of manual MMC commands, consider using the Toradex Easy Installer or uuu tool for more reliable flashing (2).

4. Boot Partition Analysis

The i.MX8X boot process is complex. Your boot log shows:

  • SCFW 83624b99
  • SECO-FW c9de51c0
  • IMX-MKIMAGE 81fca643
  • ATF lf-6.6

These components must be properly integrated in your binary (1).

Next Steps

  1. Verify your Yocto build configuration - ensure all components are properly included
  2. Test with recovery mode flashing using uuu tool for more controlled deployment (2)
  3. Check if your string change affects any critical boot parameters or memory layout

The fact that only a string change causes this issue suggests the binary layout or size might be affected by your modification, potentially disrupting the complex boot chain required for i.MX8X.

Could you share the exact string change you made and verify the file sizes of both the working and non-working binaries?

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.