There are three directories under the directory “/hardware/nvidia/platform/t18x/”, namely common, lanai, and quill. What is the difference between these three directories? I see “DTB_FILE=tegra186-quill-p3310-1000-a00-00-base.dtb” in the file p2771-0000.conf.common, but after flashing the system, use the command “dmesg | grep dts” on TX2 ", the device tree used is tegra186-quill-p3310-1000-c03-00-base.dts in the quill directory, why is this?
Lanai is TX2-NX.
Quill is TX2.
And common means the common device tree setting among all TX2 series platform.
There should be a device tree name inside each dtb file. You can check that for your question of “dmesg |grep xxx”.
When I use “dmesg | grep dts” on my TX2, it displays as shown in the figure below. Why does it output the same information in two lines? Shouldn’t this output the same line of information as the DTB_FILE set in p2771-0000.conf.common?
The real one to decide the dtb file is that long parsing process in p2771-0000.conf.common. Not just one DTB_FILE field.
Check the keyword kerndtbfab in your conf file.
Okay, thank you. Also, are there any recommended books or videos for the device tree based on the jetson platform?
I don’t know if any users create such video, you can try to search.
IMO, there is no need for such document. Device tree depends on each driver. If driver changes, then device tree should change too. There is no need to read book or video for such info… Reading the code may be the fast and direct way.
There are properties info for each driver. You can refer to kernel/kernel-4.9/Documentation/ in the kernel source.
Okay thank you. But sometimes you don’t know the function of a device tree file, or you don’t know which device tree files are involved in the driver. For example, if you want to adapt to USB
Every peripheral you want to customize on jetson should find related info on this forum.
If you are talking about other devices that are not related to jetosn, then you may need to ask the device vendor.
For example, if you buy a card from Realtek which is running over usb, we can guarantee that usb side, which is jetson’s native controller, will work fine. However, if their card needs special configuration in the device tree, then you need to consult with them.
Hello, excuse me, there is another problem, there are tegra186_quill_p3310_1000_c03_00_base.dtb files in the /Linux_for_Tegra/rootfs/boot/, /Linux_for_Tegra/kernel/dtb and /Linux_for_Tegra/bootloader directories. When I change the device tree, do I need to replace the files in all three directories? I tried it, just replace the dtb file in the /Linux_for_Tegra/kernel/dtb directory, and after re-flashing the device tree, the changes can be implemented, why is this?
Dump the bootloader log and you will know.
Thanks for the reminder, I saw that when flashing the device tree, the dtb files in the other two folders were copied from /kernel/dtb.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.