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:
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
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
