Colibri iMX7S won't boot (device nand0 not found)

A customer has a Colibri iMX7S 256MB V1.1B module that won’t boot.

Customer sent it to us and upon powering on the board, the module automatically goes into recovery mode.
I tried booting TEZI and installing a Linux image. The process goes smoothly, but apparently nothing is flashed. After rebooting, the module goes back to recovery mode.

There’s this “device nand0 not found” message in the serial output during boot:

U-Boot 2016.11-1.5.0+g087e95a (May 07 2018 - 13:36:58 +0000)                    
                                                                                
CPU:   Freescale i.MX7S rev1.2 at 792MHz                                        
CPU:   Extended Commercial temperature grade (-20C to 105C) at 38C              
Reset cause: POR                                                                
DRAM:  256 MiB                                                                  
PMIC:  RN5T567 LSIVER=0x01 OTPVER=0x0d                                          
MMC:   FSL_SDHC: 0                                                              
Using default environment                                                       
                                                                                
In:    serial                                                                   
Out:   serial                                                                   
Err:   serial                                                                   
Model: Toradex Colibri iMX7S/D                                                  
Model: Toradex Colibri iMX7S                                                    
Serial Downloader recovery mode, using sdp command                              
Net:   FEC0                                                                     
Error: FEC0 address not set.                                                    
                                                                                
Hit any key to stop autoboot:  0                                                
SDP: initialize...                                                              
SDP: handle requests...                                                         
Downloading file of size 21370832 to 0x82100000... done                         
Downloading file of size 307 to 0x82000000... done                              
Jumping to header at 0x82000000                                                 
Header Tag is not a IMX image                                                   
## Loading kernel from FIT Image at 82100000 ...                                
   Using 'config@imx7s' configuration                                           
   Trying 'kernel@1' kernel subimage                                            
     Description:  Linux Kernel 4.1                                             
     Type:         Kernel Image                                                 
     Compression:  uncompressed                                                 
     Data Start:   0x821000dc                                                   
     Data Size:    5308608 Bytes = 5.1 MiB                                      
     Architecture: ARM                                                          
     OS:           Linux                                                        
     Load Address: 0x81000000                                                   
     Entry Point:  0x81000000                                                   
     Hash algo:    md5                                                          
     Hash value:   062c6a5e34cb42445eebddd1923fe02a                             
   Verifying Hash Integrity ... md5+ OK                                         
## Loading ramdisk from FIT Image at 82100000 ...                               
   Using 'config@imx7s' configuration                                           
   Trying 'ramdisk@1' ramdisk subimage                                          
     Description:  SquashFS RAMdisk                                             
     Type:         RAMDisk Image                                                
     Compression:  uncompressed                                                 
     Data Start:   0x82610284                                                   
     Data Size:    15925248 Bytes = 15.2 MiB                                    
     Architecture: ARM                                                          
     OS:           Linux                                                        
     Load Address: unavailable                                                  
     Entry Point:  unavailable                                                  
     Hash algo:    md5                                                          
     Hash value:   a3b8e467022be3227e370eea748f782a                             
   Verifying Hash Integrity ... md5+ OK                                         
## Loading fdt from FIT Image at 82100000 ...                                   
   Using 'config@imx7s' configuration                                           
   Trying 'fdt@imx7s' fdt subimage                                              
     Description:  Colibri iMX7 Solo Device Tree                                
     Type:         Flat Device Tree                                             
     Compression:  uncompressed                                                 
     Data Start:   0x83540358                                                   
     Data Size:    44041 Bytes = 43 KiB                                         
     Architecture: ARM                                                          
     Hash algo:    md5                                                          
     Hash value:   91332626cadf189b4fe255eeedc1e89b                             
   Verifying Hash Integrity ... md5+ OK                                         
   Booting using the fdt blob at 0x83540358                                     
   Loading Kernel Image ... OK                                                  
   Loading Device Tree to 8dd44000, end 8dd51c08 ... OK                         
   Updating MTD partitions...                                                   
Device nand0 not found!                                                         
                                                                                
Starting kernel ...                                                             
                                                                                
[    0.298457] fec 30be0000.ethernet (unnamed net_device) (uninitialized): Inva0
[    0.314472] imx_usb 30b10000.usb: Can't register ci_hdrc platform device, er7
[    0.529008] rtc-ds1307 3-0068: hctosys: unable to read the hardware clock    
Running /etc/rc.local...                                                        
Colibri-iMX7_ToradexEasyInstaller_1.5-20180507                                  
                                                                                
Welcome to Toradex Easy Installer    

Which makes me think it’s probably related to NAND. Is there any way I can inspect the NAND further considering that I can only access TEZI or recovery mode?

Also, when interrupting the TEZI boot, mtdparts also gives the “device nand0 not found” message. It also seems that TEZI won’t recognize the NAND, since the tooltip on the install button says something like “install the selected image to SD card”.

Thanks,

Gustavo.

Well that I didn’t know. Actually the customer said he also tried the legacy update procedure but the process was stuck while loading ubifs during run update.

However, I just ran the whole flashing from scratch (https://developer.toradex.com/knowledge-base/flashing-embedded-linux-to-imx7-modules#Flashing_from_Scratch) process and the module is back to life and working.

Thanks for the info, Jaski!

Hi Alvaro

Tezi is not supporting Colibri iMX7S 256MB, you should use the legacy update procedure.

Jaski, shouldn’t the iMX7S V1.1B work with Toradex Easy Installer?

I just tried another iMX7S V1.1B and the installer booted and ran fine.