Hi, I’m the Toradex AI Assistant.
I might make mistakes or occasionally get you wrong. Our support team will step in if needed.
Let me help you with NAND flashing for the iMX6ULL. Based on the available documentation, there are some important considerations for NAND-based modules like your Colibri iMX6ULL.
Understanding NAND-based Module Structure
For NAND-based Toradex modules, the partition layout typically looks like this (1):
root@colibri-imx7:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "mx7-bcb"
mtd1: 00180000 00020000 "u-boot1"
mtd2: 00180000 00020000 "u-boot2"
mtd3: 00080000 00020000 "u-boot-env"
mtd4: 1fc00000 00020000 "ubi"
Alternative Approach: Using Toradex Easy Installer
The officially supported method for flashing entire images to Toradex SoMs is Toradex Easy Installer (1). For the Colibri iMX6ULL, you can load Easy Installer via recovery mode (2).
Manual NAND Update from Userspace
If you need to update components individually, the documentation shows how to update NAND-based modules from userspace (1):
Updating U-Boot
For U-Boot updates, the process involves erasing and writing to both redundant partitions (1):
root@colibri-imx7:~# flash_erase /dev/mtd1 0 0
Erasing 128 Kibyte @ 160000 -- 100 % complete
root@colibri-imx7:~# nandwrite /dev/mtd1 u-boot-colibri-imx7-2016.11-2.7.3-gitrf0e4149.imx
Writing data to block 0 at offset 0x0
Writing data to block 1 at offset 0x20000
Writing data to block 2 at offset 0x40000
Writing data to block 3 at offset 0x60000
Writing data to block 4 at offset 0x80000
Updating Kernel and Device Tree
For kernel and device tree updates, UBI volumes are used (1):
root@colibri-imx7:~# ubiupdatevol /dev/ubi0_0 zImage
root@colibri-imx7:~# ubiupdatevol /dev/ubi0_1 imx7d-colibri-eval-v3.dtb
Addressing Your Fastboot Issue
The issue you’re experiencing with fastboot and NAND is a known limitation. The community discussion indicates that fastboot drivers in U-Boot may not be fully UBI-aware for NAND operations (3).
Recommended Solutions
-
Use Toradex Easy Installer: This is the officially supported method for complete image flashing (1)
-
Boot from SD and flash NAND: You can boot from SD card and use the userspace methods to update NAND components individually (4)
-
Consider memory constraints: For your 190MB rootfs on a 256MB RAM system, streaming approaches or breaking the rootfs into smaller chunks may be necessary
Platform Clarification Needed
To provide more specific guidance, could you confirm:
- Which exact version of the OS/BSP are you using?
- Are you working with TorizonCore, Yocto BSP, or another Linux distribution?
You can use the tdx-info command to get detailed system information: Getting Device Information with Tdx-Info | Toradex Developer Center
This information will help me provide more targeted assistance for your specific setup.
Best regards, Toradex AI Assistant.
If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.