Can't flash Jetpack3.2 on Nvidia TX2 devboard

Dear All:

My Nvidia TX2 devboard somehow can’t go to ubuntu system, then I want to flash TX2 emmc, but I enccounter a problem as following log, I never meet it before, how can I flash the emmc of it, thanks!

adam@adam-Latitude:/mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra$ sudo ./flash.sh jetson-tx2 mmcblk0p1
[sudo] password for adam: 
###############################################################################
# L4T BSP Information:
# R28 (release), REVISION: 2.0, GCID: 10136452, BOARD: t186ref, EABI: aarch64, 
# DATE: Fri Dec  1 14:20:33 UTC 2017
###############################################################################
# Target Board Information:
# Name: jetson-tx2, Board Family: t186ref, SoC: Tegra 186, 
# OpMode: production, Boot Authentication: , 
###############################################################################
./tegraflash.py --chip 0x18 --applet "/mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin" --cmd "dump eeprom boardinfo cvm.bin" --skipuid 
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
 
[   0.0263 ] Generating RCM messages
[   0.0273 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm /mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin 0 0
[   0.0280 ] RCM 0 is saved as rcm_0.rcm
[   0.0287 ] RCM 1 is saved as rcm_1.rcm
[   0.0293 ] List of rcm files are saved in rcm_list.xml
[   0.0293 ] 
[   0.0293 ] Signing RCM messages
[   0.0548 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[   0.0559 ] Assuming zero filled SBK key
[   0.0607 ] 
[   0.0607 ] Copying signature to RCM mesages
[   0.0616 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[   0.0634 ] 
[   0.0635 ] Boot Rom communication
[   0.0644 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
[   0.0652 ] RCM version 0X180001
[   0.0662 ] Boot Rom communication completed
[   1.0729 ] 
[   1.0764 ] tegrarcm_v2 --isapplet
[   1.0795 ] Applet version 01.00.0000
[   1.0823 ] 
[   1.0855 ] Retrieving EEPROM data
[   1.0859 ] tegrarcm_v2 --oem platformdetails eeprom cvm /mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra/bootloader/cvm.bin
[   1.0895 ] Applet version 01.00.0000
[   1.0929 ] Saved platform info in /mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra/bootloader/cvm.bin
[   1.1760 ] 
Parsing board information failed.

Does the issue persist with Jetpack 3.1? Are you using 16.04 Ubuntu at Host PC?
You may also try the approach described here: TX2 Cloning - Jetson TX2 - NVIDIA Developer Forums
More reference: [url]Problem flashing TX-2 - Jetson TX2 - NVIDIA Developer Forums

Hi Andrey1984:

I use Ubuntu16.04 at Host PC and this issue persist with Jetpack 3.2.
I try “sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1”, it also show the same error message as “Parsing board information failed.”

Hi guohoujin2006,

Please make sure usb-otg cable is working fine.

Hi WayneWWW:

I have several TX2 core boards, others working fine with the same carrier board in the same environment. I test them on TX devboard, the result is the same. It seems this problem occurs on the TX2 core board.

Hi guohoujin2006,

So only one tx2 module failed to flash on your carrier board?

I Have two TX2 modules failed to flash on my carrier board, other 7 pcs TX2 module is ok. The two pcs failed log is the same.

Hi WayneWWW:

Do you locate this problem? I have another TX2 core module meet the same problem, I have not enough TX2 core board for developing. I want to fix these three TX2 core boards as soon as possible.

Current info seems not enough. I also try with my 16.04 server but cannot hit error.

You mentioned your own carrier board, is it nvidia devkit?

Hi WayneWWW:

I remember when I flash a board, I input wrong command as “sudo ./flash.sh jetson-tx2 /dev/mmcblk0p1”, after I correct my command to “sudo ./flash.sh jetson-tx2 mmcblk0p1”, then this problem occurs and cannot fix it. You can have a try.

My carrier board is a devboard which our EE designed, when this problem occurs, it can not fix on nvidia TX devkit either.

I got another board can’t flash emmc, I totally have four TX2 core boards can’t flash emmc on ubuntu16.04 host PC. The error message is the same. “Parsing board information failed.” It seems when flash emmc, host PC can’t read right message from TX2 emmc.

I find on the questionable TX2 core board, I can’t get serialno from /proc/cmdline and can’t turn on ethernet phy. It seems eth0 HWaddr is all zero and I check ethaddr is blank at bootloader when device start, and cbootargs is also not show serialno. I hope this information is helpful.

Please help to fix this problem, this problem seems very important and critical. I have no more TX2 core board for developing. I can send these four boards to you for repair. Thanks!

nvidia@tegra-ubuntu:~$ 
nvidia@tegra-ubuntu:~$ ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:324 errors:0 dropped:0 overruns:0 frame:0
          TX packets:324 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:21680 (21.6 KB)  TX bytes:21680 (21.6 KB)

nvidia@tegra-ubuntu:~$ 
nvidia@tegra-ubuntu:~$ 
nvidia@tegra-ubuntu:~$ ifconfig -a
can0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:171 

can1      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:172 

dummy0    Link encap:Ethernet  HWaddr 36:19:f3:9b:03:b8  
          BROADCAST NOARP  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eth0      Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:42 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:324 errors:0 dropped:0 overruns:0 frame:0
          TX packets:324 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:21680 (21.6 KB)  TX bytes:21680 (21.6 KB)

tunl0     Link encap:IPIP Tunnel  HWaddr   
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

nvidia@tegra-ubuntu:~$ sudo ifconfig eth0 up
[sudo] password for nvidia: 
SIOCSIFFLAGS: Cannot assign requested address
nvidia@tegra-ubuntu:~$ cat /proc/cmdline
root=/dev/mmcblk0p1 rw rootwait console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0 memtype=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x03100000 nvdumper_reserved=0x2772e0000 gpt tegraid=18.1.2.0.0 tegra_keep_boot_clocks maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2.1 bl_prof_dataptr=0x10000@0x277040000 sdhci_tegra_en_boot_part_access=1 root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4
nvidia@tegra-ubuntu:~$ 
nvidia@tegra-ubuntu:~$

Hi guohoujin2006,

I will try this “/dev/mmcblk0p1”, but I doubt that do you use this wrong param when flashing for all 4 devices?

No, I remember I only use this wrong param on only one pcs TX2 core board. I don’t know if use this wrong param cause this board can’t flash emmc or not.

You mentioned that you are using commands to flash, which means it is not directly on Jetpack but the download package folder. I have some solutions for this kind of issues.

Please remove the download package and install by jetpack again. Make sure it is a clean one.

Please plug in/out the cable and set to recovery mode again.

Hi WayneWWW:

I use command to flash under the folder Jetpack/64_TX2/Linux_for_Tegra, this method is also Nvidia offical method on wiki page.

And I also tried re-download Jetpack 3.2 and install jetpack again and then to flash TX2 emmc, to make sure it is a clean one, but it doesn’t work.

Hi guohoujin2006,

Were you able to flash these module before? I mean do these 4 modules never got successful flash before?

Please try all these modules on devkit. If possible, try another host (even a 14.04 host).

Hi WayneWWW:

These module can flash emmc successful before, and it’s work fine for a several days, but somehow ethernet can’t turn on, and I also can’t get serialno from /proc/cmdline, and then try to flash emmc, and find I can’t flash emmc on these module.

Hi WayneWWW:

I test these modules on TX2 devkit again and can’t flash emmc. I also install Jetpack3.2 again to make sure get a new one and flash emmc by the UI application, it doesn’t work. I don’t have ubuntu14.04 host, so I haven’t test on 14.04 host.

Does your cvm.bin exist under bootloader folder?

What is the result of “./chkbdinfo -i cvm.bin”?

Hi WayneWWW:

cvm.bin exist under bootloader folder.

I have two Jetpack folder, one is my workspace, the other is clean folder.

My workspace:

adam@adam-Latitude:~/JetPack-L4T-3.0/64_TX2/Linux_for_Tegra/bootloader$ ./chkbdinfo -i cvm.bin
ERROR: calculated CRC8 0x84 != stored CRC8 0x48

Clean folder:

adam@adam-Latitude:/mnt/mmc/Jetpack3.2/64_TX2/Linux_for_Tegra/bootloader$ ./chkbdinfo -i cvm.bin 
ERROR: calculated CRC8 0xbb != stored CRC8 0x82