Mass Flash using Ethernet Interface

Hi, I am trying to create a backup of my existing image in Jetson AGX Xavier, and then restore that image to the Xavier through Ethernet interface (instead of using USB-C).

I have read the initrd flash README file, and backup restore README file, and used the following workflow to succesfully create a backup image, and generate a massflash package using the backup image.

1- Create backup image using USB-C interface (usb-c cable connected, ethernet cable not connected):

sudo ./tools/backup_restore/l4t_backup_restore.sh -b -c jetson-agx-xavier-devkit

2- Generate Massflash package via ethernet interface (ethernet cable connected, usb-c cable not connected):

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --use-backup-image --no-flash --network eth0:<target_ip>:<host_ip> --massflash 1 jetson-agx-xavier-devkit mmcblk0p1

Now, I attempt to flash the image using the following command (ethernet cable connected, usb-c cable not connected):

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --massflash 1 --network eth0:<target_ip>:<host_ip>

However, I get the following message on the host’s terminal:

No devices to flash

The device is in recovery mode. I am using Jetpack 5.1. What am I doing wrong here?

PS: I am using workflow 3 in README_backup_restore.txt as the reference.

There is no such thing to really flash your board with ethernet. You still need to use usb type C cable.

“IP” even does not exist when your board is in recovery mode.

@WayneWWW , thanks for the info. I have one question though: I am successfully able to generate massflash package using ethernet when the board is in recovery mode. How is that achieved if there is no IP? Does generating mass flash package reboot the board during the process?

Could you check your serial console log during this process or even run the command without connecting ethernet cable? I guess you are actually entering offline mode.

Offline mode means it does not know any information from the board. Just uses some hard-coded info on your host PC.

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --use-backup-image --no-flash --network eth0:<target_ip>:<host_ip> --massflash 1 jetson-agx-xavier-devkit mmcblk0p1

Yes you are right @WayneWWW . I ran the mass flash package creating command again, but this time I did not connect the AGX Xavier to the host machine at all. The command executes without any errors. So it is definitely not using the ethernet link, and seems to be using data present on host PC.

Thanks for the support!

The interface of usb0 and eth0 is in use when the board is using initrd to flash the external drive.

Before initrd to work, it will depend on recovery + usb port. Thus, lacking of usb port would not work.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.