USB Loading Setup for Aquila AM69 Recovery
Since you have U-Boot console access, here’s the step-by-step process for USB recovery:
1. Prepare USB Storage Device
Format a USB drive with FAT32 and copy your recovery files:
- Your custom Yocto
.wic image file
- Any individual partition images (kernel, rootfs, etc.)
- Device tree files if needed
2. Initialize USB in U-Boot
From your U-Boot console, initialize the USB subsystem(1):
# Reset and start USB subsystem
usb reset
# List detected USB devices
usb info
# Scan for storage devices
usb storage
(1)
3. Load Images from USB
Once USB is initialized, load your image files(1):
# Load your WIC image to memory (adjust filename as needed)
fatload usb 0:1 0x90000000 your-custom-image.wic
# Check file size (important for writing)
echo "Loaded ${filesize} bytes"
# Alternative: Load individual components
fatload usb 0:1 0x82000000 Image
fatload usb 0:1 0x88000000 your-devicetree.dtb
fatload usb 0:1 0x90000000 rootfs.ext4
(1)
4. Prepare eMMC for Writing
Check and prepare your eMMC:
# List available MMC devices
mmc list
# Select eMMC (usually device 0)
mmc dev 0
# Check eMMC info and health
mmc info
# Erase eMMC (be careful - this wipes everything!)
mmc erase 0 0x200000
5. Write Image to eMMC
For a complete WIC image:
# Calculate blocks (filesize is in hex, convert to blocks)
# Each block is 512 bytes, so divide filesize by 0x200
setexpr blocks ${filesize} / 0x200
# Write the complete image
mmc write 0x90000000 0 ${blocks}
6. Alternative: Manual Partition Writing
If you prefer to write individual partitions:
# Write bootloader (adjust addresses for your layout)
mmc write 0x90000000 0x8000 0x1000
# Write kernel to boot partition
mmc write 0x82000000 0x20000 0x8000
# Write rootfs
mmc write 0x90000000 0x100000 0x100000
7. External Media Recovery Alternative
If USB loading fails, you can use the external media approach documented for recovery(1). Prepare your SD card or USB stick with Easy Installer:
$ tree
.
├── boot.scr
├── image.json
├── imx-boot-recoverytezi
├── imx-boot-sd
├── overlays.txt
├── recovery
│ ├── uuu
│ ├── uuu.auto
│ └── uuu.exe
├── recovery-linux.README
├── recovery-linux.sh
├── recovery-windows.bat
├── recovery-windows.README
├── tezi.itb
├── tezi.png
└── wrapup.sh
(1)
Then boot from external media by setting U-Boot to skip eMMC:
# Boot from USB stick
run bootcmd_usb0
# Or boot from SD card
run bootcmd_mmc1
(1)
8. Verify Recovery
After writing, verify the recovery:
# Reset and boot
reset
# Or manually boot to test
mmc dev 0
fatload mmc 0:2 0x82000000 Image
fatload mmc 0:2 0x88000000 your-devicetree.dtb
booti 0x82000000 - 0x88000000
Important Notes:
- Memory Addresses: The addresses (0x90000000, 0x82000000) are examples - verify these don’t conflict with your U-Boot memory map
- Block Calculations: Always verify your block calculations before writing to eMMC
- Backup: If possible, backup critical partitions before overwriting
- Power: Ensure stable power during eMMC write operations
Would you like me to provide more specific addresses or commands for any particular step in this recovery process?
Best regards, Toradex AI Assistant.
Did you like my answer?

If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.