| (5 intermediate revisions by the same user not shown) | |||
| Line 28: | Line 28: | ||
4. Copy '''your_overlay.dtbo''' to '''Linux_for_Tegra/kernel/dtb'''. |
4. Copy '''your_overlay.dtbo''' to '''Linux_for_Tegra/kernel/dtb'''. |
||
5. Add '''your_overlay.dtbo''' to the machine conf used for flashing. For example, for NVIDIA Jetson Orin Nano developer kit we modify file |
5. Add '''your_overlay.dtbo''' to the machine conf used for flashing. For example, for NVIDIA Jetson Orin Nano developer kit we modify file '''jetson-orin-nano-devkit.conf''' and add our overlay to variable '''OVERLAY_DTB_FILE''' |
||
<syntaxhighlight lang="bash"> |
<syntaxhighlight lang="bash"> |
||
OVERLAY_DTB_FILE+=",tegra234-p3768-0000+p3767-0000-dynamic.dtbo,your_overlay.dtbo"; |
|||
</syntaxhighlight> |
|||
This will load the overlay at boot time. |
|||
6. If you do not want to load the device tree overlay at boot time, skip step 5 and do this instead. Copy '''your_overlay.dtbo''' to '''Linux_for_Tegra/rootfs/boot/'''. |
|||
7. After flashing the board the file will be under '''/boot/''' directory. Modify '''extlinux.conf''' file inside '''/boot/extlinux/''' directory and add the following entries for '''FDT''' and '''OVERLAY''': |
|||
<syntaxhighlight lang="bash"> |
|||
TIMEOUT 30 |
|||
DEFAULT primary |
|||
MENU TITLE L4T boot options |
|||
LABEL primary |
|||
MENU LABEL primary kernel |
|||
LINUX /boot/Image |
|||
INITRD /boot/initrd |
|||
APPEND ${cbootargs} |
|||
FDT /boot/dtb/kernel_tegra234-p3768-0000+p3767-0000-nv.dtb |
|||
OVERLAY /boot/your_overlay.dtbo |
|||
</syntaxhighlight> |
</syntaxhighlight> |
||
* FDT: specifies the base device tree. On directory '''/boot/dtb/''' you can check which device tree file is being used as base DTB. |
|||
* OVERLAY: specifies the overlay to be loaded. When using this entry, FDT needs to be specified as well. You can not use OVERLAY alone without FDT. |
|||
8. Reboot the board to apply changes. |
|||
= Need Further Support? = |
|||
'''📞 Book Consultation Call:''' [https://proventusnova.com/contact-us/ Show Calendar!] |
|||
'''📩 Contact Via Email:''' [mailto:support@proventusnova.com support@proventusnova.com] |
|||
'''🌐 Visit Our Website:''' [https://proventusnova.com ProventusNova.com] |
|||
Latest revision as of 18:05, 24 November 2025
Adding custom device tree overlay to JetPack 6.X
Keywords: NVIDIA Jetson, JetPack, kernel customization, device tree overlays, dtbo
Description
This wiki page shows how to add a custom device tree overlay for NVIDIA platforms with Jetpack 6.X.
Adding custom device tree overlay
Take your_overlay.dts as the custom device tree overlay file to be added.
1. In Jetpack 6.X device tree overlays live in directory: hardware/nvidia/t23x/nv-public/overlay/. Add your_overlay.dts device tree overlay file to this directory.
2. In order to build this file, add the following to the Makefile inside the same directory.
dtbo-y += your_overlay.dtbo
3. Inside Linux_for_Tegra/source directory, export environment variables for compiling and compile dtbs.
export CROSS_COMPILE=$HOME/l4t-gcc/aarch64--glibc--stable-2022.08-1/bin/aarch64-buildroot-linux-gnu-
export KERNEL_HEADERS=$PWD/kernel/kernel-jammy-src
make dtbs
Note: Compiled device tree overlay files will be under: Linux_for_Tegra/source/kernel-devicetree/generic-dts/dtbs/.
4. Copy your_overlay.dtbo to Linux_for_Tegra/kernel/dtb.
5. Add your_overlay.dtbo to the machine conf used for flashing. For example, for NVIDIA Jetson Orin Nano developer kit we modify file jetson-orin-nano-devkit.conf and add our overlay to variable OVERLAY_DTB_FILE
OVERLAY_DTB_FILE+=",tegra234-p3768-0000+p3767-0000-dynamic.dtbo,your_overlay.dtbo";
This will load the overlay at boot time.
6. If you do not want to load the device tree overlay at boot time, skip step 5 and do this instead. Copy your_overlay.dtbo to Linux_for_Tegra/rootfs/boot/.
7. After flashing the board the file will be under /boot/ directory. Modify extlinux.conf file inside /boot/extlinux/ directory and add the following entries for FDT and OVERLAY:
TIMEOUT 30
DEFAULT primary
MENU TITLE L4T boot options
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
APPEND ${cbootargs}
FDT /boot/dtb/kernel_tegra234-p3768-0000+p3767-0000-nv.dtb
OVERLAY /boot/your_overlay.dtbo
- FDT: specifies the base device tree. On directory /boot/dtb/ you can check which device tree file is being used as base DTB.
- OVERLAY: specifies the overlay to be loaded. When using this entry, FDT needs to be specified as well. You can not use OVERLAY alone without FDT.
8. Reboot the board to apply changes.
Need Further Support?
📞 Book Consultation Call: Show Calendar!
📩 Contact Via Email: support@proventusnova.com
🌐 Visit Our Website: ProventusNova.com
