To flash just the DTB, I am using the command:
./flash.sh -r -k kernel-dtb jetson-xavier-nx-devkit-emmc mmcblk0p1
Prompt success,but The dtb are not flash to the development board.
[ 1051.4586 ] Coldbooting the device
[ 1051.4874 ] tegrarcm_v2 --ismb2
[ 1051.5233 ] tegradevflash_v2 --reboot coldboot
[ 1051.5251 ] Bootloader version 01.00.0000
*** The target t186ref has been flashed successfully. ***
Reset the board to boot from internal eMMC.
the dtb in my host computer DTB Build time is:Sep 21 16:22
Does your “/boot/extlinux/extlinux.conf” have an “FDT” key/value pair entry? I’m not sure if this behaves the same on JP 5.x as it does on 4.x, but if it does, then boot will use that first when present and skip the DTB in the partition (it would instead use the “/boot” content).
Could you copy your dtb file to “/boot”, and with the old FDT commented out or placed somewhere else as a backup, add your modified dtb file name to the FDT entry?
Screenshots are hard to use since they cannot be text searched. A serial console boot log would be quite useful since specific DTB file names could be searched for or examined throughout the entire boot (even prior to Linux loading).
I do not know what the difference is between the two trees. Is it just a name difference? Or does it require some edit?
FYI, you could take a binary tree and convert it to human-readable device tree source code. Example (changes the original tegra194-p3668-all-p3509-0000.dtb to a “.dts” source file): dtc -I dtb -O dts -o tegra194-p3668-all-p3509-0000.dts tegra194-p3668-all-p3509-0000.dtb
If you have edited the source .dts file, then you could convert it back to binary with a new name: dtc -I dts -O dtb -o edited.dtb tegra194-p3668-all-p3509-0000.dts
The “-I” is the input format, the “-O” is the output format, the “-o” is the output file name, and the final argument is just the file to look at.