Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
documentation.suse.com / NVIDIA Jetson platform deployment

NVIDIA Jetson platform deployment

SLES edition

Publication Date: 17 Apr 2025
WHAT?

How to combine SUSE and third-party software for NVIDIA* Jetson* platforms

WHY?

SUSE Linux software can install on NVIDIA Jetson systems but does not include drivers for all hardware functionality.

EFFORT

What's the effort one has to put in?

GOAL

Fully exploit NVIDIA Jetson hardware capabilities while enjoying SUSE software security and support services

REQUIREMENTS
  • NVIDIA Jetson based system with NVIDIA Orin* chipset

1 Preparing firmware for NVIDIA Jetson platforms

UEFI system firmware allows SUSE Linux media and installations to boot.

1.1 Introduction

SUSE Linux installation media are formatted as UEFI Removable Media and require Arm* SystemReady compliant boot firmware on the system.

1.2 Requirements

  • NVIDIA* Jetson* Xavier*, Orin* or later System-on-Module

  • For NVIDIA Jetson Orin Nano developer kit: 0.01 in jumper

  • Second system (e.g., notebook) with USB connection to your NVIDIA based system

1.3 Flashing the firmware

Follow NVIDIA or OEM provided instructions for flashing your system. SUSE Linux installation will be easiest if boot firmware and operating system do not share the same storage device, i.e., SPI flash for firmware.

  1. Power on the NVIDIA system and enter Force Recovery Mode (RCM) according to its vendor instructions.

  2. Flash the boot firmware via USB from the secondary system:

    > sudo ./flash.sh target-board-config external
    Note
    Note

    The target board parameter depends on your system and your intended usage.

Tip
Tip: Finding the right config for your system

Only some board config files have human-recognizable aliases.

You can try resolving the aliases to the product codes for module and board and checking for any additional -qspi config files:

> ls -l jetson-orin*
lrwxrwxrwx 1 tux users 29  4. Jun 15:37 jetson-orin-nano-devkit.conf -> p3768-0000-p3767-0000-a0.conf
lrwxrwxrwx 1 tux users 34  4. Jun 15:38 jetson-orin-nano-devkit-nvme.conf -> p3768-0000-p3767-0000-a0-nvme.conf
> ls -1 p3768-0000-p3767-0000-a0*
p3768-0000-p3767-0000-a0.conf
p3768-0000-p3767-0000-a0-maxn.conf
p3768-0000-p3767-0000-a0-nvme.conf
p3768-0000-p3767-0000-a0-qspi.conf
> ls -l jetson-agx-orin*
lrwxrwxrwx 1 tux users 40  4. Jun 15:37 jetson-agx-orin-devkit-as-jao-32gb.conf -> p3737-0000-p3701-0000-as-p3701-0004.conf
lrwxrwxrwx 1 tux users 40  4. Jun 15:38 jetson-agx-orin-devkit-as-nano4gb.conf -> p3737-0000-p3701-0000-as-p3767-0004.conf
lrwxrwxrwx 1 tux users 40  4. Jun 15:38 jetson-agx-orin-devkit-as-nano8gb.conf -> p3737-0000-p3701-0000-as-p3767-0003.conf
lrwxrwxrwx 1 tux users 40  4. Jun 15:37 jetson-agx-orin-devkit-as-nx-16gb.conf -> p3737-0000-p3701-0000-as-p3767-0000.conf
lrwxrwxrwx 1 tux users 40  4. Jun 15:37 jetson-agx-orin-devkit-as-nx-8gb.conf -> p3737-0000-p3701-0000-as-p3767-0001.conf
lrwxrwxrwx 1 tux users 26  4. Jun 15:38 jetson-agx-orin-devkit.conf -> p3737-0000-p3701-0000.conf
lrwxrwxrwx 1 tux users 26  4. Jun 15:37 jetson-agx-orin-devkit-industrial.conf -> p3737-0000-p3701-0008.conf
lrwxrwxrwx 1 tux users 31  4. Jun 15:38 jetson-agx-orin-devkit-industrial-maxn.conf -> p3737-0000-p3701-0008-maxn.conf
lrwxrwxrwx 1 tux users 31  4. Jun 15:37 jetson-agx-orin-devkit-industrial-qspi.conf -> p3737-0000-p3701-0008-qspi.conf
lrwxrwxrwx 1 tux users 31  4. Jun 15:37 jetson-agx-orin-devkit-maxn.conf -> p3737-0000-p3701-0000-maxn.conf
> ls -1 p3737-0000-p3701-0000*
p3737-0000-p3701-0000-as-p3701-0004.conf
p3737-0000-p3701-0000-as-p3767-0000.conf
p3737-0000-p3701-0000-as-p3767-0001.conf
p3737-0000-p3701-0000-as-p3767-0003.conf
p3737-0000-p3701-0000-as-p3767-0004.conf
p3737-0000-p3701-0000.conf
p3737-0000-p3701-0000.conf.common
p3737-0000-p3701-0000-maxn.conf
p3737-0000-p3701-0000-qspi.conf

1.4 Summary

You have updated the boot firmware and possibly changed its storage location. During system boot it should identify on serial console similar to:

Jetson UEFI firmware (version 36.3.1-gcid-36302503 built on 2024-05-17T04:47:03+00:00)

1.5 Troubleshooting

Refer to NVIDIA documentation.

2 Installing kernel modules for NVIDIA Jetson platforms

A Kernel Module Package (KMP) provides additional kernel drivers.

2.1 Introduction

SUSE Linux products contain drivers to boot on NVIDIA* Orin* and earlier NVIDIA Jetson* platforms. But as documented in the Release Notes, certain drivers are not included.

NVIDIA JetPack* SDK 6.0 and its Jetson Linux Driver Pack 36.3 and later releases provide additional kernel driver modules in source form.

2.2 Requirements

  • NVIDIA Jetson Orin System-on-Module

  • SUSE Linux Enterprise Server 15 SP6

NVIDIA Jetson Xavier* and earlier System-on-Module generations are no longer supported in NVIDIA JetPack SDK 6.0 and later releases.

2.3 Installing the drivers

Install third-party kernel drivers provided via SUSE SolidDriver Program.

Perform the following steps on your NVIDIA based system.

  1. Add the repositories for the Kernel Module Package:

    > sudo zypper addrepo \
    https://drivers.suse.com/nvidia/Jetson/NVIDIA_JetPack_6.1/sle-15-sp6-aarch64/1.0/install \
    ssdp_jetpack
    > sudo zypper addrepo \
    https://drivers.suse.com/nvidia/Jetson/NVIDIA_JetPack_6.1/sle-15-sp6-aarch64/1.0/update \
    ssdp_jetpack_update
  2. Refresh the repository cache:

    > sudo zypper --gpg-auto-import-keys refresh
  3. Check whether kernel flavor default or 64kb is used:

    > uname -r
    6.4.0-150600.42-default
  4. Install the KMP for that same kernel flavor:

    > sudo zypper install -y nvidia-jetson-kmp-default
    Note
    Note

    Installing nvidia-jetson-kmp-default will by default also install nvidia-jetson-extra-kmp-default with further drivers beyond the GPU.

  5. Reboot the system:

    > sudo reboot

2.4 Summary

You have installed third-party kernel driver modules on your system and rebooted it for them to get loaded.

However, these drivers are not supported by the SUSE provided Mesa graphics libraries or Xorg modules and instead require to install proprietary third-party libraries.

2.5 Troubleshooting

If the kernel modules are not probed at all, verify that you installed the right flavor.

If the kernel modules are not probed successfully (in dmesg), verify that your system is based on NVIDIA Orin chipset and that no conflicting NVIDIA drivers for discrete GPUs are installed.

Linux kernel driver modules like these cannot provide a kernel console. You will still need to use the serial console, same as before.

3 Installing NVIDIA libraries for NVIDIA Jetson platforms

NVIDIA* libraries consume the NVIDIA Jetson* graphics drivers.

3.1 Introduction

To exploit the NVIDIA Orin* GPU and DLA, third-party kernel drivers and libraries are needed.

The SLES NVIDIA Compute Module does not offer RPM packages for NVIDIA Jetson's integrated GPU today. As alternative we explain how to install the correct NVIDIA provided downloads for SUSE systems.

3.2 Requirements

  • NVIDIA Jetson Orin System-on-Module

  • SUSE Linux Enterprise Server 15 SP6

  • Linux kernel modules for NVIDIA Orin GPU

NVIDIA Jetson Xavier* and earlier System-on-Module generations are no longer supported in NVIDIA JetPack* SDK 6.0 and later releases.

3.3 Installing the libraries

Install third-party libraries provided by NVIDIA.

Perform the following steps on your NVIDIA based system.

  1. Add the NVIDIA hosted package repository for JetPack:

    > sudo zypper addrepo https://repo.download.nvidia.com/jetson/sle15-sp6/jp6.1/ nvidia-jetpack
  2. Refresh the repository cache:

    > sudo zypper --gpg-auto-import-keys refresh
  3. Install the third-party packages:

    > sudo zypper install -y nvidia-jetpack-all
  4. Reboot the system:

    > sudo reboot

3.4 Verifying driver and library installation

The NVIDIA System Management Interface (SMI) utility uses the just installed NVIDIA Management Library (NVML) to query the kernel drivers for hardware status.

  1. If you haven't installed package nvidia-jetpack-all above, you may need to install package nvidia-jetpack-tools:

    > sudo zypper install nvidia-jetpack-tools
  2. Run nvidia-smi tool:

    > sudo nvidia-smi

For more information: https://developer.nvidia.com/system-management-interface

3.5 Summary

You have installed libraries and tools and checked that they work in principle.

3.6 Troubleshooting

RPM packages for discrete NVIDIA GPUs and these packages for integrated GPUs cannot be installed side-by-side. Discrete GPUs are currently not supported on NVIDIA Jetson platforms.