SDK manager on a Ubuntu 22.04 host computer is used to flash the latest relase onto an Orin Nano devkit. After installation, I found that I had to downgrade to nvidia-l4t-core to install nvidia-jetpack with sudo apt install -y nvidia-jetpack due to a compatibility warning. I also noted that flashing to nvme with ubuntu 20.04 did not work.
In this configuration when I followed the r36.4 instructions for RT Kernel OTA, it installed all the packages as intended, but the Jetson enters a looping boot cycle trying to boot into the new kernel. This is following the instructions that are for the OTA RT kernel at (Kernel Customization — NVIDIA Jetson Linux Developer Guide 1 documentation)
I don’t have any further error messages, but when I tried to edit the boot config to go back to Primary, it would not boot at all and I have had to reflash again.
Questions
I am looking to not spend too much time on this issue, I have some past experience with a Preempt_rt compile for the Jetson Nano to SD card. My questions are as follows:
Can the Orin Nano operate on Jetpack 6.1 using OTA RT Kernel with boot from nvme ssd? It appears to not be the case from what I tried.
If this is not the case, then can I flash the preempt_rt patched kernel to the nvme SSD using the SDK on ubuntu 22.04 host computer? Would I go into the downloaded files at ~/nvidia/nvidia_sdk/JetPack_6.1_Linux_JETSON_ORIN_NANO_8GB_DEVKIT an recompile the kernel there? If I build the kernel following the steps up to and including building the DTBs will this then be flashed when I go back into the SDK?
What I am getting at is how do I get a compiled preemt_rt kernel onto the Jetson SSD? What is the best and most failsafe method suggested?
Hi,
There is no existing RT kernel package for Orin Nano developer kit with rootfs in NVMe SSD. Please refer to steps in developer guide to build the packages. You can set up the environment by following the steps: No data from Joystick Logitech-f710 - #10 by DaneLLL
To ensure you have the environment which can build default kernel, flash it to Orin Nano developer kit, and the developer kit can boot up. And then you can try to enable RT kernel.
Hi Dane, I appreciate the speedy response. I am familiar now with the steps that you have proposed and feel comfortable producing the required set of files. Some follow up questions to ensure maximum success:
Should I recompile the preempt_rt kernel and modules before proceeding with the flash scripts?
$ tar xf ${L4T_RELEASE_PACKAGE}
$ sudo tar xpf ${SAMPLE_FS_PACKAGE} -C Linux_for_Tegra/rootfs/
$ cd Linux_for_Tegra/
$ sudo ./tools/l4t_flash_prerequisites.sh
$ sudo ./apply_binaries.sh
So I have already unpacked these tar files and altered them. Once the desired recompiled kernel and modules are in place, do I proceed with
Second question, should I be using make menuconfig to set the tick frequency (1000Hz) and enable full preempt_rt as have done in the past for the Jetson Nano?
I want to make sure this approach is correct, so I apply first
./generic_rt_build.sh "enable"
Then go into Linux_for_Tegra/source/kernel/kernel-jammy-src where the menuconfig is found to make a .config for the correct compile flags?
The reason that I ask is because I am unfamiliar with
Thanks for the instructions, that led to a successful flash of the preempt_rt kernel with r36.4, Jetpack6.1. However the configuration script to flash the “Super” mode for NVME boot on the dev kit is not operational at this time.
This might be something that is still in progress? The non-super version worked to flash but I am only able to reach the 15W power mode. If this is something that can be looked into, it would be great to be able to upgrade to the MAXN power mode in the future with this kernel. I also ran into an issue with the tegra defconfig after running
For some reason, but it might have been caused by a partial execution of the script that failed due to a type after editing earlier. I opted to edit the menuconfig instead to change tick to 1000hz, fully preemptable kernel, and full dynticks system (tickless). This is operating well on the Orin Nano for R36.4.0
Hi,
As of now Orin Nano super mode is enabled in SD card image and flashing Orin Nano develper kit through SDKManager. It is not enabled in kernel customization. It will be supported in next Jetpack 6.2.