Jetpack 3.1 - How to select different DTBs

I was able to select different DTBs by adding entries in “extlinux.conf” but I could not find FDT entry in “extlinux.conf” after Jetpack 3.1 installation.

How can different DTBs be selected for new L4T? It’s very important for driver development.

I haven’t done this before, but it seems to be ok…try starting with a dts file created through dtc extraction of the “/proc” tree:

sudo dtc -I fs -O dts -o ./extracted.dts /proc/device-tree

Then you can edit and put that back in “/boot” after compile:

# edit or view extracted.dts...
sudo dtc -I dts -O dtb -o ./"device-tree-$(uname -r).dtb" extracted.dts

This should be an exact copy of the device tree of the running system.

I have not yet installed R28.1, but realize device tree settings can be inherited from the U-Boot environment, so it may be that this is where the default installtion is getting its dtb. There are some dtb files in “/boot”, one of those would be an exact match for the default install even if it isn’t named via the FDT key/value pair in extlinux.conf. Likely the correct one would be noticeable in a flash log, but I’m not positive on that. You can put an FDT entry in even if it isn’t there already.

Adding FDT entry to “extlinux.conf” worked for R28.1 even it’s not there already.

“Setting the DTB” in http://elinux.org/Jetson_TX2 (http://elinux.org/Jetson/TX2_DTB) is a related wiki page.

Jetson/TX2 DTB ( http://elinux.org/Jetson/TX2_DTB#TX2 ) for R28.1 TX2 simply says

Replace your own build DTB with 
JetPack/3.1/64_TX2/Linux_for_Tegra_64_tx2/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb

The wiki didn’t say where to find the source file DTS for the device tree. There is no instruction about how to compile the new source either.

@vickyy, could you confirm the live update approach of adding DFT entry in /boot/extlinux/extlinux.conf is an supported feature in TX2 (as described by linuxdev)?

Ideally, it would be helpful to see the whole flow of extracting/patching the TX2 device tree, such as the one on elinux.org for TX1: http://elinux.org/Jetson/TX1_SPI#Locating_the_Active_DTB

Since this thread is for TX1, I’ll post a new thread on TX2 panel.