Skip to content

Build Kernel of Jetson Orin Nano

In my case i have to modify the modules to support out of tree modules for my robot board.

Query System component versions

Here’s a compact set of CLI commands to check Jetson Linux and JetPack component versions on a Jetson Orin Nano Super (assuming it runs Jetson Linux 36.X or similar):

Jetson Linux & JetPack Version

dpkg-query --show nvidia-l4t-core
  • Shows something like: nvidia-l4t-core 36.4.4-20230925123456
  • 36.4.4 is the Jetson Linux version (part of JetPack 6.2.1)

CUDA Version

nvcc --version

or

cat /usr/local/cuda/version.txt

cuDNN Version

cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

TensorRT Version

dpkg -l | grep nvinfer

All NVIDIA Packages (Quick Overview)

dpkg -l | grep nvidia

Camera & Multimedia Stack

dpkg -l | grep libargus

or

dpkg -l | grep nvmm

UEFI Bootloader Version

cat /proc/device-tree/chosen/bootloader-version

Kernel Version

uname -a
  • Should show something like: Linux jetson 5.15.0-tegra #1 SMP ...

L4T Release Info

cat /etc/nv_tegra_release
  • Gives a summary like: # R36 (release), REVISION: 4.4, GCID: 12345678, BOARD: jetson-orin-nano

Jetson Linux 36.X

Jetson Linux 36.X is NVIDIA’s latest board support package (BSP) for Jetson Orin modules, providing kernel, drivers, bootloader, and Ubuntu-based root filesystem for edge AI development.

Jetson Linux 36.X—specifically version 36.4.4 as of October 2025—is part of the JetPack 6.2.1 SDK and is designed to support production-grade deployment on Jetson AGX Orin, Orin NX, and Orin Nano modules. Here's a breakdown of its key features and architecture:

Core Components

  • Linux Kernel 5.15: Offers long-term support and improved hardware compatibility.
  • Ubuntu 22.04 Root Filesystem: Provides a familiar and robust userland environment.
  • UEFI Bootloader: Modern boot architecture for secure and flexible boot management.
  • OP-TEE: Trusted Execution Environment for secure operations and cryptographic tasks.
  • NVIDIA Drivers: Accelerated support for GPU, camera, and AI workloads.

Security Enhancements

  • Hardware Security Module (HSM) support: Enables signing of boot images for secure boot.
  • OTA Tools: For over-the-air updates and remote maintenance.
  • Vulkan 1.3 Support: For advanced graphics and compute workloads.

Development Workflow

  • SDK Manager Integration: Flash Jetson modules and install JetPack components easily.
  • Sample Filesystem and Flashing Utilities: Streamlined bring-up and customization.
  • Source Availability: Kernel, drivers, and rootfs sources are hosted on GitHub and NVIDIA’s developer portal.

Compatibility

  • Supports:
  • Jetson AGX Orin Developer Kit
  • Jetson Orin Nano Developer Kit
  • All Jetson Orin Production Modules
  • Not backward-compatible with older Jetson platforms like TX2 or Xavier.

Documentation & Resources

Modify Kernel

To build a custom kernel with a new driver for a Jetson Orin Nano, you'll need to download the correct sources, configure the kernel, compile it with your driver, and deploy it carefully.

Here’s a step-by-step breakdown tailored for a Jetson Orin Nano Super setup running JetPack 6.x:


1. Prepare Your Environment

Backup your system

 or work on a separate SSD to avoid bricking your main setup.
  • Install essential packages:
sudo apt update && sudo apt install -y build-essential bc bison flex libssl-dev libncurses-dev libelf-dev

2. Download Kernel Sources

Use the JetsonHacks scripts or manually grab the BSP (Board Support Package) sources:

Before using these scripts, ensure:

You have a Jetson Orin device running JetPack 6.X.

  git clone https://github.com/jetsonhacks/jetson-orin-kernel-builder.git

Using the scripts to perform the steps. Start with downloading the sources

  ./scripts/get_kernel_sources.sh --force-replace 

3. Configure the Kernel

./scripts/edit_config_cli.sh

Enable your driver (either built-in or as a module) via make menuconfig or make xconfig.

4. Integrate Your Driver

Configure kernel UI for ch341 module

5. Build the Kernel and Modules

./scripts/make_kernel.sh
./scripts/make_kernel_modules.sh

References

Build Jetson Orin Kernel and Modules

Issue with CH340 USB-to-Serial Converter Not Creating Device Files on Jetson Orin Nano Super