iMX6ULL flashing NAND from UUU

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"  

(1)

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  

(1)

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   

(1)

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

  1. Use Toradex Easy Installer: This is the officially supported method for complete image flashing (1)

  2. Boot from SD and flash NAND: You can boot from SD card and use the userspace methods to update NAND components individually (4)

  3. 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.


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.