On Jetson Orin NX, after flashing Jetson Linux 35.3.1 with a real-time patched kernel, HDMI cannot be used properly

In the kernel with the real-time patch applied, peripherals such as the keyboard and mouse can be powered on, and it is possible to log in and use them through a serial port. In the kernel without the real-time patch, the system can boot up normally.

The steps I took to compile the real-time system kernel are as follows:
(1) Obtain the Jetson Linux BSP package, rootfs package, and kernel source package from the following website.
jetson-linux-r3531
(2) Extract the downloaded resources on the host machine using the following commands:
sudo tar xf Jetson_Linux_R35.3.1_aarch64.tbz2 -C ${MyWorkSpace}/nvidia/
sudo tar xf Tegra_Linux_Sample-Root-Filesystem_R35.3.1_aarch64.tbz2 -C \ ${MyWorkSpace}/nvidia/Linux_for_Tegra/rootfs/
sudo tar xf public_sources.tbz2 -C ${MyWorkSpace}/nvidia/source/
(3) Compile the real-time kernel:
su
cd Linux_for_Tegra/source/public
tar -xjf kernel_src.tbz2
sudo apt-get install build-essential bc
sudo tar -xvf gcc-linaro-7.3.1-2018.05-i686_aarch64-linux-gnu.tar.xz -C /opt
export PATH=/opt/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/:$PATH
export LOCALVERSION=-tegra
export CROSS_COMPILE=aarch64-linux-gnu-
cd kernel/kernel-5.10/
scripts/rt-patch.sh apply-patches
make ARCH=arm64 tegra_defconfig
make ARCH=arm64 O=$TEGRA_KERNEL_OUT -j8
sudo make ARCH=arm64 O=$TEGRA_KERNEL_OUT modules_install
INSTALL_MOD_PATH=${MyWorkSpace}/nvidia/Linux_for_Tegra/rootfs/
cp arch/arm64/boot/Image ${MyWorkSpace}/nvidia/Linux_for_Tegra/kernel/
cp arch/arm64/boot/dts/nvidia/* ${MyWorkSpace}/nvidia/Linux_for_Tegra/kernel/dtb/
(4) Flash the system to Jetson Orin NX.
cd ${MyWorkSpace}/nvidia/Linux_for_Tegra/
./apply_binaries.sh
cd tools
./l4t_create_default_user.sh -n nvidia -p nvidia
cd …/
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1
-c tools/kernel_flash/flash_l4t_external.xml -p “-c bootloader/t186ref/cfg/flash_t234_qspi.xml”
–showlogs --network usb0 p3509-a02+p3767-0000 internal

Following the above method, after powering on, the HDMI display shows for 3 seconds, and then the HDMI display turns off.


However, data can be received through the serial port. The boot information printed on the serial port is as follows:
20230530_0917_JNOlog.txt (88.1 KB)
Are there any errors or omissions in the above steps?

Hi,

we have recently updated steps on building RT kernels.
Kernel Customization — Jetson Linux Developer Guide documentation (nvidia.com)
You also need to compile the display driver in addition to kernel modules.
Then after booting into the system via serial connection, run sudo depmod -a and reboot your device. You should now have access to GUI.

Using this method can successfully solve the problem. Thank you very much for your help.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.