feat: add support for Jetson Orin Nano and AGX Orin SBCs#23
feat: add support for Jetson Orin Nano and AGX Orin SBCs#23gooosetavo wants to merge 1 commit intosiderolabs:mainfrom
Conversation
7d19a67 to
0662fc2
Compare
Add two new installers for Jetson Orin Nano and AGX Orin alongside existing Jetson Nano support. This enables multi-model architecture without breaking existing deployments. Key changes: - Added dedicated installers for jetson_orin_nano and jetson_agx_orin - Upgraded from OE4T fork to mainline U-Boot v2026.01 for better upstream support - Integrated NVIDIA L4T r36.4.4 BSP for accessing prebuilt device trees - Enhanced build system to handle multiple installer targets - Updated documentation with comprehensive project overview Technical details: - Mainline U-Boot lacks Tegra234 configs for Orin boards - Using NVIDIA validated device trees from L4T BSP as interim solution - Build system shares common U-Boot build across models - Each model has dedicated installer logic with shared base components Signed-off-by: Gustavo Argote <10593140+gooosetavo@users.noreply.github.com>
ddbbb38 to
02708a0
Compare
thank you, please let us know how it goes! |
|
@gooosetavo doesn;t these boards support native UEFI boot? If so I'm inclined to go in that direction |
I'm not sure, but I'll give that a shot! |
|
I finally got a chance to verify and yeah, like @frezbo said, these new boards support UEFI. I was able to flash an SD card with a vanilla Talos image (see link for the factory config used) and it booted right up, allowing me to connect w/
I haven't completed the bootstrapping, but looking good so far. |
|
This PR is stale because it has been open 45 days with no activity. |
|
@gooosetavo any success? I was trying to make it work for a long time. I've already tried UEFI option, but the nvidia extensions are not supporting jetson modules due to the differences in kernel modules(nvidia modules build for jetson are built as OOT modules with manual changes in linux kernel to make them work). |
|
Hi all, Confirming that UEFI boot works great on the Orin NX 16 GB (same T234 SoC). On the GPU/nvidia extension side — I have a working solution to the OOT module problem described in this thread. The blocker is that Full setup running on Talos v1.12.6 with CUDA inference in Kubernetes pods, no Just posted details on pkgs#1166 as well — happy to help get this unblocked. |
|
@schwankner great work, Talos 1.13 moved to using cdi and gpu-operator, some questions, I'm trying to understand:
I'm also suprised the l4t now builds mostly fine with LTS kernel 😅 |
|
@frezbo unfortunately Nvidia Jetson is not supported by gpu-operator https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/platform-support.html#supported-arm-based-platforms (information in note). @schwankner That's nice achievement. I'll take a look at your solution :) |
got it, I'm looking forward to getting this merged |
|
@frezbo Thanks for the questions — and to correct my earlier post which mentioned Talos v1.12.6, I'm already running v1.13.0-rc.0.
The deeper issue: the mainline The approach that works:
The separation matters: nvgpu uses the OE4T host1x internally for GPU syncpoint operations. The shim provides the What host1x provides (and where the shim fits)
The shim implements 8 ioctls total; the three above are what CUDA 12.6 actually calls. Talos 1.13 / CDI After posting that initial comment I put together a test branch targeting Talos 1.13.0-rc.0 to verify everything end-to-end and clean up what's no longer needed. The upgrade went through without issues. The biggest simplification: CDI is enabled by default in containerd in Talos 1.13 ( No gpu-operator involved — as @mmalyska noted, Jetson isn't supported there. The CDI path works directly with containerd's built-in support. |
|
yup let's work on getting this merged @schwankner if you're on the community slack, mind sending me a hi? |
|
I created the PR siderolabs/pkgs#1518. |

Goal: add support for Jetson Orin Nano and AGX Orin SBCs
I added two new installers,
jetson_orin_nanoandjetson_agx_orin, with their own model-specific configs.The big change under the hood is switching from the OE4T U-Boot fork to U-Boot v2026.01. This gives the project better upstream support going forward, since OE4T hadn't been updated in some time. Mainline U-Boot doesn't have Tegra234 configs needed for the Orin boards yet, so I'm pulling the binaries from NVIDIA's L4T r36.4.4 BSP. Not ideal long-term, but it works and uses NVIDIA's validated device trees. The original nano project does have these defined in the u-boot project, though.
Summary:
I'll give this a spin on my Orin Nano (p3766) board later this week and let you guys know how that goes!
Additional references: