I tried to read the app partition of the board, but it was not successful

I used the following command, the core board is Orin NX 8GB

sudo ./flash.sh -r -k APP -G clone.img jetson-agx-orin-devkit-as-nx-8gb nvme0n1p1

Hi,

you made two mistakes here:

  1. jetson-agx-orin-devkit-as-nx-8gb is for emulating Orin NX 8GB on AGX Orin, not for native Orin NX. Please use jetson-orin-nano-devkit if you have a Orin Nano Developer Kit, or p3509-a02+p3767-0000 for Xavier NX Developer Kit.
  2. flash.sh does not support NVMe drives, and please either check Linux_for_Tegra/tools/backup_restore/README_backup_restore.txt for cloning the entire NVMe drive, or Flashing Support — Jetson Linux Developer Guide documentation for cloning only the APP partition.

For cloning the entire NVMe drive, if you are using 35.3.1 or previous L4T releases, you have to manually replace every instances of mmcblk0 with nvme0n1 inside nvbackup_partitions.sh and nvrestore_partitions.sh.

So you mean that if I use the 35.4.1 version the command can use to clone the APP

sudo ./flash.sh -r -k APP -G clone.img jetson-agx-orin-devkit nvme0n1p1

No, I just mean you have to change something in the scripts in order to make cloning NVMe drives works.
Again, flash.sh does not support NVMe drives.
Also, it’s either jetson-orin-nano-devkit or p3509-a02+p3767-0000, but definitely not jetson-agx-orin-devkit for Orin NX.

So what you mean is that I may take the following two steps

  1. Change mmcblk0 in the two files nvbackup_partitions.sh and nvrestore_partitions.sh you mentioned to nvme0n1

  2. Use this to clearly read the APP partition

./tools/backup_restore/l4t_backup_restore.sh -b jetson-orin-nano-devkit

Exactly, but this will clone the entire NVMe drive.
Also, you’d also need to use the same backup/restore script for restoring the content, instead of the usual flashing flow.

So check this link in case you only want the APP partition:
https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/SD/FlashingSupport.html#cloning-rootfs-with-initrd

so you mean that in 35.4.1, this command will be better
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --initrd jetson-agx-orin-devkit nvme0n1p1

I’m not saying which one is better…
Just depends on your need.

OK, thank you very much

Hi, there is some other problem
while I use the command

./tools/backup_restore/l4t_backup_restore.sh -b jetson-orin-nano-devkit

It shows that

Waiting for target to boot-up 
....
Waiting for target to boot-up 
Timeout

Please put the UART log here.

uart.log (23.3 KB)
this is the Uart log ,please check it, thank you

Does the device boot up correctly when the backup script is not run?

The device can work when the script is not run

Hi,

are you using a custom carrier board? Or it’s from some third-party vendors?
Please check this to disable reading EEPROM from the carrier board:
https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html#eeprom-modifications

Yes, maybe we use a thid-party vendors, how to check it?
Since your company did not provide orinnx carrier boards, we purchased them from a third party

Then please do this.

Orin NX can be used and is compatible with Orin Nano DevKit or Xavier NX DevKit

Thank you,I will check it

I have modified the size from 100 to 0 on
Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts

the log did not change

How did you flash this board before?