Hi,
I have flashed wrong DTB to the Orin board, which causes the board cannot boot up. Is there any way to flash the correct DTB only to the board, since I don’t want to lose the important files in rootfs?
Thanks
Hi,
I have flashed wrong DTB to the Orin board, which causes the board cannot boot up. Is there any way to flash the correct DTB only to the board, since I don’t want to lose the important files in rootfs?
Thanks
*** Please note that this reply is generated by LLM automatically ***
Flashing the wrong DTB (Device Tree Blob) to the Jetson AGX Orin board can indeed cause boot issues. Fortunately, you can flash the correct DTB without having to reflash the entire root file system.
Understanding the Boot Process
Before we dive into the solution, it’s essential to understand the boot process of the Jetson AGX Orin board. The boot process involves several stages, including:
Flashing the Correct DTB
To flash the correct DTB without reflashing the entire root file system, you can use the flash.sh script provided by NVIDIA. Here are the steps:
Linux_for_Tegra/bootloader directory.Linux_for_Tegra directory and run the following command:sudo ./flash.sh -k kernel-dtb jetson-agx-orin-devkit mmcblk0p1
This command will flash the correct DTB file to the board without touching the root file system.
Comparison with Other Jetson Boards
The process of flashing the correct DTB is similar for other Jetson boards, such as the Jetson Xavier NX and Jetson AGX Xavier. However, the specific commands and file locations may vary depending on the board.
For example, on the Jetson Xavier NX, you would use the following command:
sudo ./flash.sh -k kernel-dtb jetson-xavier-nx-devkit mmcblk0p1
On the Jetson AGX Xavier, you would use the following command:
sudo ./flash.sh -k kernel-dtb jetson-agx-xavier-devkit mmcblk0p1
Conclusion
Flashing the wrong DTB to the Jetson AGX Orin board can cause boot issues, but fortunately, you can flash the correct DTB without having to reflash the entire root file system. By following the steps outlined above, you can quickly and easily recover your board and get it up and running again.
*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***
I runned the command, and got below error notice:
[ 15.3121 ] Sending bct_mem
[ 15.4107 ] Sending blob
[ 18.4419 ] completed
[ 19.4473 ] tegrarcm_v2 --chip 0x23 0 --ismb2applet
[ 19.5992 ] tegrarcm_v2 --chip 0x23 0 --ismb2
[ 19.6020 ] MB2 version 01.00.0000
[ 19.7405 ] Erasing partition
[ 19.7552 ] tegradevflash_v2 --erase kernel-dtb
[ 19.7567 ] Bootloader version 01.00.0000
[ 19.8791 ] 000000004d4d090d: E> NV3P_SERVER: Failed to open partition kernel-dtb.
[ 19.9142 ]
[ 19.9142 ] [Failed]
[ 19.9142 ]
Error: Return value 13
Command tegradevflash_v2 --erase kernel-dtb
Failed to flash/read t186ref.
No there is no such “dtb only” way on Orin.
You could flash the UEFI again and dtb will be updated because the default dtb on Orin is part of the UEFI.
Can you guide me how to flash the UEFI? Thanks!
change above partition to the one that UEFI in use. probably A_cpu_bootloader partition.
bootloader/flash.xml will tell you the precise partition name.
I flashed the UEFI, still cannot boot up the board, I saw below log from serial debug:
[ 8.707320] tegra-se-nvhost 15820000.se: initialized
[ 8.710361] tegra-se-nvhost 15820000.se: tegra_se_probe: complete
[ 8.710599] tegra-se-nvhost 15840000.se: Adding to iommu group 54
[ 8.711020] tegra-se-nvhost 15840000.se: initialized
[ 8.715380] tegÿâWARNING: clock_disable: clk_power_ungate on gated domain 35 for gpc1clk
ÿára-se-nvhost 15840000.se: tegra_se_probe: complete
[ 8.716246] tegra_actmon d230000.actmon: in actmon_register()…
[ 8.716681] tegra_actmon d230000.actmon: bwmgr_disable = 1
[ 8.718792] tegra_actmon d230000.actmon: initialization Completed for the device mc_all
[ 8.726100] hvc_sysfs: hyperviÿâWARNING: clock_disable: clk_power_ungate on gated domain 35 for gpc0clk
ÿásor is not present
[ 8.860625] ALSA device list:
[ 8.860726] No soundcards found.
[ 8.861450] Freeing unused kernel memory: 3968K
[ 8.861611] Run /init as init process
[ 8.874100] Root device found: initrd
[ 8.874554] Mount initrd as rootfs and enter recovery mode
Finding OTA work dir on external storage devices
Checking whether device /dev/mmcblk?p1 exist
Looking for OTA work directory on the device(s): /dev/mmcblk0p1
/dev/mmcblk1p1
[ 9.049039] EXT4-fs (mmcblk1p1): mounted filesystem with ordered data mode. Opts: (null)
OTA work directory /mnt/ota_work is not found on /dev/mmcblk1p1
Checking whether device /dev/sd?1 exist
Device /dev/sd?1 does not exist
Checking whether device /dev/nvme?n1p1 exist
Device /dev/nvme?n1p1 does not exist
Finding OTA work dir on internal storage device
[ 9.079952] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
OTA work directory /mnt/ota_work is not found on /dev/mmcblk0p1
OTA work directory is not found on internal and external storage devices
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
bash-5.0# [ 39.904267] vdd-12v-sys: disabling
I flashed a sd card and inserted it to the board, and want to boot from sd card, do you know how to let the board boot from sd card? If I boot up with sd card, then I can modify the dtb and image files in mmcblk0p1 then.
Please just do full reflash to your board. No need to spend one day for something that you could just finish in 20 mins.
Your board hits another issue now.
That’s because I don’t want to lose important files in rootfs which I didn’t backup..
I heard that I can boot from nvme instead of emmc, do you know how?
Can orin support booting from SD card?
Attach your full boot up log first. Those boot up media is really not important before fixing your current issue…