Boot Troubleshooting
Board does not boot after flashing
1. Check boot mode jumpers
The board must be set to the correct boot source after flashing. Jumper configuration differs between carrier boards — consult the Hardware Reference Manual of your specific board.
Common mistake: flashing eMMC while booted from SD card, then forgetting to switch the jumpers to eMMC boot mode.
2. Verify the flash completed correctly
If you used dd:
# Check exit code immediately after dd
echo $? # must be 0
sync # flush write buffers before removing media
If you used UUU, check the final output for errors — a successful flash ends with:
3. Check power supply
An unstable power supply can cause silent write failures. Use the recommended supply voltage and current rating for your board (see Hardware Reference Manual).
U-Boot drops to interactive prompt
U-Boot could not find the kernel image or device tree. This is usually a misconfigured boot environment or wrong device node.
1. Inspect boot variables
At the U-Boot prompt:
2. Identify the correct eMMC device
This shows all MMC devices. Try booting from each:
3. Check that the boot partition is readable
You should see Image and the .dtb file. If the listing is empty, the boot partition was not written correctly.
4. Save a working environment
Once booted correctly, persist the fix:
Kernel panic: cannot mount root filesystem
The kernel finds itself but cannot mount rootfs. The most common causes are a wrong root= device or a missing filesystem driver.
1. Find the correct device
Boot from SD card and run:
eMMC is typically the device with TRAN=mmc. Note the device name (e.g. mmcblk2) and the rootfs partition number.
2. Check current bootargs
At the U-Boot prompt:
Locate the root= parameter. If it reads root=/dev/mmcblk0p2 but eMMC is mmcblk2, fix it:
3. Persist the fix
Board stuck at SPL / no U-Boot output
SPL (Secondary Program Loader) initialises DDR before handing off to U-Boot. If SPL hangs silently, the likely cause is a DDR configuration mismatch.
- Make sure the
imx-bootbinary matches the DDR size of your module. Check DDR Selection. - Re-flash with the correct
imx-bootbinary for your hardware variant. - If using UUU, verify you passed the right boot file as the first argument: