I was trying to modify the device tree for Jetson AGX Orin and I added a simple custom_prop = “dtb modified” to check the device tree being loaded. after this modification i tried flashing to A_kernel-dtb partition as well as APP partitions with no success in updating the dtb. It was only when I changed the L4T configuration from Extlinux to kernel partition from the UEFI console that I was able to update the dtb. I had ruled out this possibility because the extlinux.config file did not mention DTB or FDT. Finally, I have the question as to from where does the board actually load the device tree from. It is not from the boot/dtb partition either.
Yes, I did see that but still there should be a specific file where it gets decided. I went through the config files and my board sku is 0005. It boots with the corresponing dtb too. But when I try to modify that I expected the dtb to be picked up automaticallly but it is not so. If I am able to find fro where UEFI picks its dtb it would help.
Yes, by default ExtLinux is in use but if all dtbs that I checked have been modified. I made the edit to the source files in source/hardware/nvidia/t23x/nv-public/staging/ and build he dtbs. So which partition handles uefi dtb?
I was able to find this in flash.xml but the .bin file mentioned here cannot be found
<allocation_policy> sequential </allocation_policy>
<filesystem_type> basic </filesystem_type>
3670016
<file_system_attribute> 0 </file_system_attribute>
<allocation_attribute> 8 </allocation_attribute>
<percent_reserved> 0 </percent_reserved>
uefi_jetson_with_dtb.bin
<align_boundary> 65536 </align_boundary>
this right?
so the best method to modify dtb is to use FDT in extlinux.conf?
To expect the board will boot from the modified dtb always if I add FDT /boot/dtb in extlinux.conf. The other method is to make it boot from the kernel partition. The difference I feel here is in the former there is nothing hidden you can always check /boot/dtb partition to get the current dtb and when you place modified dtb in kernel/dtb the dtb in /boot/dtb will reflect that too as it is copied from here.