GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Welcome
  • Quick Start
  • Jetson Software Architecture
  • Boot Architecture
  • Jetson AGX Orin
  • Jetson Xavier NX Series
  • Jetson AGX Xavier Series
  • Flashing Support
  • Root File System
  • Bootloader
  • Kernel
  • Multimedia
  • Hardware Acceleration in the WebRTC Framework
  • Graphics Programming

This view

  • Original page
  • New address

GeezerVison is showing docs.nvidia.com — Welcome — Jetson Linux<br/>Developer Guide 34.1 documentation

Welcome¶

This Developer Guide applies to NVIDIA® Jetson™ Linux version 34.1.1.

NVIDIA Jetson is the world’s leading platform for AI at the edge. Its high-performance, low-power computing for deep learning and computer vision makes it the ideal platform for compute-intensive projects. The Jetson platform includes a variety of Jetson modules together with NVIDIA JetPack™ SDK.

Each Jetson module is a computing system packaged as a plug-in unit (a System on Module (SOM)). NVIDIA offers a variety of Jetson modules with different capabilities.

JetPack bundles all of the Jetson platform software, starting with NVIDIA Jetson Linux. Jetson Linux provides the Linux kernel, bootloader, NVIDIA drivers, flashing utilities, sample file system, and more for the Jetson platform.

Jetson Developer Kits and Modules¶

Jetson developer kits include a non-production specification Jetson module attached to a reference carrier board. It is used with JetPack SDK to develop and test software for your project. Jetson developer kits are not intended for production use.

Jetson modules designed for deployment in a production environment are sold separately from Jetson developer kits. Each Jetson module ships with no software preinstalled; you attach it to a carrier board designed or procured for your end product, and flash it with the software image you’ve developed.

Software for Jetson Modules and Developer Kits¶

JetPack SDK is a comprehensive resource for building AI applications. It includes Jetson Linux together with accelerated software libraries, APIs, sample applications, developer tools, and documentation.

Use NVIDIA SDK Manager to install Jetson Linux and other JetPack components on your Jetson developer kit. For instructions, see the appropriate Jetson Developer Kit user guide. Alternatively, see the topic Quick Start to flash your Jetson module with the bootloader and file system only, excluding other JetPack components.

For information about moving a completed application from a Jetson developer kit to a production Jetson module on your production carrier board, see the appropriate topic “Jetson Module Adaptation and Bring-Up” topic for your Jetson module.

You can customize Jetson Linux software to fit the needs of your project. This developer guide contains the information you need to optimize your use of the complete Jetson product feature set.

Documentation for Jetson Modules and Developer Kits¶

This developer guide is your primary resource for information about software development for Jetson modules.

NVIDIA publishes many other documents that address specific aspects of Jetson software and hardware. Several important ones are listed in the topic Related Documentation.

Many of these documents and others are available through the Jetson Download Center. To find a document, enter any string of consecutive words from the document’s title in the Search box. Use the Product dropdown to restrict your search to documents for a specific Jetson device.

The NVIDIA Autonomous Machines Getting Started page contains links to several documents that are useful to developers who are new to artificial intelligence (AI) programming or to Jetson products. This page has links to “Getting Started” guides and user guides for each Jetson module’s developer kit.

Additional resources and important facts about Jetson Linux are on the Jetson Linux home page of the NVIDIA Developer web site.

Devices Supported by This Document¶

The NVIDIA Jetson Linux Developer Guide covers use of Jetson Linux with any of the module and reference carrier board combinations described in this table.

Type of module Module name & P-number * Compatible developer kit
NVIDIA® Jetson AGX Orin™ series Jetson AGX Orin™ (P3701-0000)
For Developer Kit only
Jetson AGX Orin Developer Kit (P3730); includes 3701-0000 module
NVIDIA® Jetson Xavier™ NX series Jetson Xavier NX (P3668-0000)

For developer kit only

Jetson Xavier NX Developer Kit (P3518-0000); includes P3668-0000 module
Jetson Xavier NX (P3668-0001)

Commercial module

Jetson Xavier NX 16GB (P3668-0003)

Commercial module

NVIDIA® Jetson AGX Xavier™ series Jetson AGX Xavier (P2888-0001)

Original module with 16 GB RAM

Jetson AGX Xavier Developer Kit (P2972-0000); includes P2888-0001 module
Jetson AGX Xavier (P2888-0004)

Original module with 32 GB RAM

Jetson AGX Xavier 64GB (P2888-0005)

With 64 GB RAM

Jetson AGX Xavier Industrial (P2888-0008)

Industrial grade module with 32 GB RAM

* The P-numbers for NVIDIA® Jetson™ modules and developer kits are derived from their 699-level part numbers (PNs). See Jetson Module EEPROM Layout for details about the structure of a 699-level part number for modules.

For more information about the various Jetson modules and developer kits, see the Jetson Developer Site and the Jetson FAQ.

How Developer Guide Topics Identify Devices¶

If a Developer Guide topic does not concern all supported Jetson devices, its heading or subheading specifies its scope. Here are two examples of scope headings:

  • Jetson Xavier AGX Series Software Features

  • Power Management for Jetson AGX Orin Devices

Some examples of subheadings:

  • Applies to: Jetson AGX Orin only

  • Applies to: Jetson Xavier NX series and Jetson AGX Xavier series only

“Jetson Xavier NX series” refers to all variants of Jetson Xavier NX. “Jetson Xavier NX” or “original Jetson Xavier NX” refers to the original Jetson Xavier NX (P3668-0000 or P3668-0001) only.

“Jetson AGX Xavier series” refers to all variants of Jetson AGX Xavier. “Jetson AGX Xavier” or “original Jetson AGX Xavier” refers to original Jetson AGX Xavier (P2888-0001) only.

Note

The word “original” is purely descriptive, and is used only to clarify the products being referenced. It is not a part of any Jetson product’s name.

Introduction

  • Welcome
  • Quick Start
    • Types and Models of Jetson Devices
    • Preparing a Jetson Developer Kit for Use
    • Assumptions
    • Environment Variables
    • To flash Jetson developer kit operating software
    • Jetson Modules and Configurations
    • To Determine Whether the Developer Kit Is in Force Recovery Mode

Architecture

  • Jetson Software Architecture
    • Documentation
    • Sample Applications
    • Deep Learning Components
    • Computer Vision
    • Accelerated Computing
    • Graphics
    • Multimedia
    • Sensors
    • CUDA-X
    • Board Support Package
    • Developer Tools
    • Other Components
      • CUDA Toolkit
      • Graphics
      • JetPack SDK
  • Boot Architecture
    • Jetson AGX Orin Boot Flow
      • BootROM
      • PSCROM
      • MB1
      • MB2
        • MB2 Applet
        • MB2
      • UEFI
    • Jetson Xavier NX and Jetson AGX Xavier Boot Flow
      • BootROM
      • Bootloader Components
        • Common Driver Framework
        • Microboot1
      • TegraBoot
        • TegraBoot-BPMP
        • TegraBoot-CPU
      • UEFI
    • Partition Configuration
      • How Jetson Partition Configurations Are Described
      • Partition Configuration Files
      • Format of a Partition Configuration File
        • <partition_layout> Element
        • <device> Element
        • <partition> Element
        • <partition> Child Elements
        • List of Translated Keywords
      • External Storage Device Partition
    • MB1 Platform Configuration
      • About MB1 BCT
        • Pinmux/GPIO Configuration
        • Example
        • Common Prod Configuration
        • Controller Prod Configuration
        • Pad Voltage Configuration
        • PMIC Configuration
        • Security Configuration
        • GPIO Interrupt Mapping Configuration
        • Storage Device Configuration
        • UPHY Lane Configuration
        • OEM-FW Ratchet Configuration
        • BootROM Reset PMIC Configuration
        • Miscellaneous Configurations

Software Feature Overview

  • Jetson AGX Orin
    • Bootloader
    • Toolchain
    • Kernel
    • Camera Interface
    • LSIO
    • HSIO
    • DisplayPort
    • Security Engine
    • Power Modes (Profiles)
    • RTC
    • System
  • Jetson Xavier NX Series
    • Bootloader
    • Toolchain
    • Kernel
    • Camera Interface
    • LSIO
    • HDMI
    • DisplayPort
    • PCIe
    • SDMMC
    • Security Engine
    • USB 3.0
    • Ethernet
    • Ethernet Controller Features (EQOS)
    • Power Modes (Profiles)
    • RTC
    • Watchdog
    • System
    • CUDA
    • Graphics
      • EGL Details
      • GL and Vulkan Details
    • Multimedia
    • Control Area Network (CAN)
    • Audio
  • Jetson AGX Xavier Series
    • Bootloader
    • Toolchain
    • Kernel
    • Debug Interface
    • Camera Interface
    • LSIO
    • HDMI
    • DisplayPort
    • PCIe
    • SDMMC
    • SATA
    • SATA-Marvel (over PCIe)
    • UFS
    • Security Engine
    • USB 3.0
    • Ethernet
    • Ethernet Controller Features (EQOS)
    • Power Modes (Profiles)
    • RTC
    • Watchdog
    • System
    • CUDA
    • Graphics
      • EGL Details
      • GL and Vulkan Details
    • Multimedia
    • Control Area Network (CAN)
    • Audio

Software Features in Depth

  • Flashing Support
    • Before You Begin
    • Basic Flashing Script Usage
    • Basic Flashing Procedures
      • To flash the target device
      • To flash using a convenient script
      • To flash the target device to mount a rootfs specified by UUID
      • To flash the target device to mount a rootfs specified by partition device name
      • To clone a Jetson device and flash
      • To back up and restore a Jetson device
      • To RCM boot to NFS
    • Flashing Script Usage
    • Flashing to a USB Drive
      • To set up a flash drive manually for booting
      • To set up a flash drive manually for using as root file system
      • To prepare files to boot from a flash drive with Secure Boot
      • To set up a USB drive as a boot device or root file system using flash with initrd
    • Flashing to an NVMe Drive
      • To set up an NVMe drive manually for booting
      • To set up an NVMe drive manually for using as root file system
      • To prepare files to boot from an NVMe drive with Secure Boot
      • To set up an NVMe drive as a boot device or root file system using flash with initrd
    • Flashing to an SD Card
      • Prerequisites
      • To generate an image to be flashed to an SD card
      • To flash the image to an SD card with Etcher
      • To flash the image to an SD card with dd
      • To resize the root partition to fill available SD card space
    • Flashing to an External Storage Device
    • Flashing a Specific Partition
      • To flash a specific partition
      • Examples
    • Flashing for NFS as Root
      • To flash for a network file system as root file system
    • Flashing with initrd
      • Requirements
      • To flash with initrd
    • Flashing to Multiple Jetson Devices
    • Enlarging an Internal Memory Partition for Root File System
      • To flash for a larger partition
    • Determining the Success of a Driver Update
      • To determine the success of a driver update
    • Reconfiguring a Jetson Device with oem-config
      • To re-enable oem-config manually on a flash drive
      • To re-enable oem-config manually on an SD card
      • About Communication Through the Debugging Port
        • To configure oem-config to use a 40-pin header UART port
      • Headless Mode Flow in oem-config
        • To reconfigure the target device with oem-config
        • To create and enable a swap file manually
        • Skipping oem-config
        • Examples
    • Modifying Jetson RAM Disk
      • To modify RAM disk
  • Root File System
  • Bootloader
    • T23x Boot Configuration Table
      • BR-BCT
      • MB1-BCT
      • Mem-BCT
      • MB2-BCT
      • Important Notes for Customized Carrier Board
    • UEFI Adaptation
      • Sources and Compilation
      • Boot Order Selection
      • Customized Logo:
      • DTB Support
    • Switching Between A/B Boot Chains - Developer Preview
      • For NVIDIA® Jetson AGX Orin™
      • For NVIDIA® Jetson AGX Xavier™ and NVIDIA® Jetson Xavier™ NX
    • Update and Redundancy
      • A/B Slot Layout
      • A/B System Update
        • Partition Selection
        • Update Engine
      • Bootloader Implementation
        • Partition Settings
        • Update Engine States
      • When the Update Engine is Launched
      • Enabling Bootloader Redundancy
        • To enable redundancy by creating an SMD image
        • To enable redundancy with the nv_update_engine
      • Bootloader Tools
        • Boot Control
        • Bootloader Update Payload Generator
        • Where the BUP File is Stored
        • SMD Image Generator
      • Running the Update Engine
        • To enable/disable rootfs redundancy
        • To Update Bootloader
      • Update Engine State Machine
      • Manually Modifying Boot Slots
        • To manually modify the boot slots
        • To show the current boot slot
        • To show the slot status
      • Sample Boot Log
      • Generating the Bootloader Update Payload (BUP)
        • To generate a single-spec BUP
        • To generate a multi-spec BUP
        • Location of Generated BUP Files
  • Kernel
    • Kernel Adaptation
      • From Rel-32 Kernel 4.9 to rel-34 Kernel 5.10
        • Compiler Update
        • Plug-in Manager replaced by DTBO
        • Carrier Board Customization Notes
        • Minor Version Update
    • Kernel Customization
      • Obtaining the Kernel Sources with Git
        • Prerequisites
        • To sync the kernel sources
      • Manually Downloading and Expanding Kernel Sources
        • To manually download and expand the kernel sources
      • Building the Kernel
        • To build the kernel
        • To sign and encrypt kernel, kernel-dtb, and initrd binary files
      • Preparing to Build External Kernel Modules
        • To prepare the Jetson Linux kernel headers on a Jetson system
        • To prepare the Jetson Linux kernel headers on a non-Jetson system
        • To use a manually built kernel source tree
        • To prepare a kernel source tree that is not built
      • To build external kernel modules
      • Using the Jetson Linux Real-Time Kernel Package
        • Prerequisites
        • To install the real-time kernel package
        • To remove the real-time kernel package
        • Switching to a Different Kernel
    • Generic Timestamp Engine
      • Enabling the GTE Driver
        • To enable the GTE device tree nodes
        • To enable and compile the GTE kernel driver and test driver
      • Running Sample GTE Tests
        • To run the GTE test kernel driver
        • To run the GTE user space sample application
        • To display GTE device and GTE event statistics
    • Boot Time Optimization
      • Device Tree Nodes
      • Environment Configuration
        • Disable Console Printing over UART
      • Compile-Time Configuration
      • Asynchronous Probe
        • To move the driver to another thread
      • To reduce file system initialization time
      • To disable audio configurations
      • To modularize the kernel drivers
      • To disable debugging
    • Display Configuration and Bring-Up
      • For Jetson AGX Orin : Enabling HDMI on Custom Carrier Boards
        • Known Limitation
      • Setting HDMI or DP Screen Resolution
        • To change the default HDMI/DP screen resolution
      • Mirroring or Extending Displays
        • To choose the relative position of each monitor
      • Hard-coding Kernel Display Boot Mode for HDMI
        • To update the kernel DTB file
        • To specify a mode other than the default
        • Guidelines
      • nvimp_util: A Tool for Calculating Memory Bandwidth for a Particular Display Configuration (IMP)
        • Command Line Options
        • Multi-Head/Multi-Window Input Configurations
        • Output Values
        • Device Tree Configuration
      • Seamless Display on DP (over USB-C)
  • Multimedia
    • Multimedia APIs
      • Installing GStreamer
      • Multimedia Demo Applications
        • About NvGstPlayer
        • About NvGstCapture
    • GStreamer API
    • GStreamer-Based Camera Capture
    • Accelerated Decode with ffmpeg
      • To install the ffmpeg binary package
      • To get source files for the ffmpeg package
      • To include the ffmpeg library in Jetson Linux builds
      • Decode Functional Flow
    • Accelerated GStreamer
      • GStreamer-1.0 Installation and Setup
        • To install GStreamer-1.0
        • To check the GStreamer-1.0 version
        • GStreamer-1.0 Plugin Reference
      • Decode Examples
        • Audio Decode Examples Using gst-launch-1.0
        • Video Decode Examples Using gst-launch-1.0
        • Video Decode Using gst-v4l2
      • Encode Examples
        • Audio Encode Examples Using gst-launch-1.0
        • Video Encode Examples Using gst-launch-1.0
        • Image Encode Examples Using gst-launch-1.0
        • Supported H.264/H.265/VP9/AV1 Encoder Features with GStreamer-1.0
      • Camera Capture with GStreamer-1.0
        • Camera Capture with GStreamer-1.0
        • Progressive Capture Using nvv4l2camerasrc
        • Raw-YUV Capture Using v4l2src
        • Camera Capture and Encode Support with OpenCV
      • Video Playback with GStreamer-1.0
        • Video Playback Examples
        • Video Decode Support with OpenCV
      • Video Streaming with GStreamer-1.0
        • To perform video streaming with nvgstplayer-1.0
      • Video Format Conversion with GStreamer-1.0
        • Raw-YUV Input Formats
        • Raw-YUV Output Formats
        • NVIDIA Input and Output Formats
      • Video Scaling with GStreamer-1.0
      • Video Cropping with GStreamer-1.0
      • Video Transcode with GStreamer-1.0
      • CUDA Video Post-Processing with GStreamer-1.0
        • gst-nvivafilter
      • Video Rotation with GStreamer-1.0
      • Video Composition with GStreamer-1.0
        • To composite decoded streams with different formats
        • To composite different camera feeds
      • Interpolation Methods for Video Scaling
        • To use bilinear interpolation method for scaling
      • EGLStream Producer Example
      • EGL Image Transform Example
      • GStreamer Build Instructions
        • To build GStreamer using gst-install
        • To build GStreamer manually
      • nvgstcapture-1.0 Reference
        • Command Line Options
        • CSI Camera Supported Resolutions
        • CSI Camera Runtime Commands
        • USB Camera Runtime Commands
        • Runtime Video Encoder Configuration Options
        • Notes
      • nvgstplayer-1.0 Reference
        • nvgstplayer-1.0 Command Line Options
        • nvgstplayer-1.0 Runtime Commands
      • Video Encoder Features
      • Supported Cameras
        • CSI Cameras
        • USB 2.0 Cameras
        • Industrial Camera Details
  • Hardware Acceleration in the WebRTC Framework
    • Typical Buffer Flow
    • Application and Unit Test Setup
      • To set up and test the NvEncoder sample application
    • Important Method Calls
      • To create a hardware-enabled video encoder
      • To query the video encoder
      • To get supported video formats
    • The WebRTC Package
    • Limitations
  • Graphics Programming
    • Binary Shader Program Management
      • Automatic Shader Cache
        • To make a cache read-only
      • Comparison and Combination
    • GLSLC Shader Program Compiler
      • To compile a shader program
      • Compiled Shader Program Characteristics
      • Libraries Loaded on Demand
    • EGLDevice
      • EGLDevice
      • EGLOutput
      • EGLStream
      • Extensions
      • Runtime Configuration
        • Conditions Requiring a Stream Surface
      • Implementation
        • Rendering to EGLDevice
        • Creating a Stream Surface
        • Cross-Process and Cross-Partition EGLStream Applications
      • Connecting a Surface to a Screen
      • Setting Up the Display with DRM
        • To select an encoder, CRTC, and connector
        • More information
      • Board-to-Display Connectors
    • EGLStream
      • EGLStream Producers
      • EGLStream Consumers
      • EGLStream Operation Modes
        • Mailbox Mode
        • FIFO Mode
      • EGLStream Pipeline
        • To build a simple EGLStream pipeline
        • To destroy the EGLStream pipeline
        • EGLStream State
      • Building a Cross-Process EGLStream Pipeline
        • To build a cross-process EGLStream pipeline
        • Cross-Process EGLStream Example
        • To run the cross-process EGLStream pipeline example
    • OpenGL ES Programming Tips
      • Programming Efficiently
        • State
        • Geometry
        • Shader Programs
        • Textures
        • Miscellaneous
        • Optimizing OpenGL ES Applications
      • Avoiding Memory Fragmentation
        • Video Memory Overview
        • Allocating and Freeing Video Memory
        • Best Practices for Video Memory Management
      • Graphics Driver CPU Usage
      • Performance Guidelines
    • Sample Applications
      • NVIDIA Graphics Sample Applications
        • Building the Samples
        • Starting the Graphics System
        • To launch Weston with a script
        • To launch Weston manually
        • Upstream Sample Application: Gears
  • Windowing Systems
    • Weston (Wayland)
      • Weston/Wayland Architecture
      • Shells
      • Configuration
      • Environment Variables
      • Running Weston
        • To launch Weston with a script
        • To launch Weston manually
      • Multiple Display Heads
      • Example of weston.ini Display Options
      • Hot-Plugging
        • Verified Use Cases
        • Issues Fixed in Weston
        • Known Issues
      • Compositing Mode in Weston
      • NV16/NV24 in Weston
      • Shared-Memory Rendering
        • To run the test case
      • DMA Buffer Rendering
        • To run a verified use case (video playback test)
        • VPR Memory
        • To run a sample case
        • Current Limitations
      • Weston dma-buf Support
        • Buffer Allocation
        • Buffer Write/read from CPU
        • Wayland Protocol to Post dma-buf Buffers to Weston
        • GL Renderer in Weston
        • Display Hardware Compositing in Weston
        • Weston dma-buf Sample
      • weston-debug
      • GNOME Wayland Desktop Shell Support
        • To start the windowing system
    • X Window System
      • Starting X Server Manually
        • To start X server
        • To stop X server
      • Runtime Configuration
      • Using xrandr for Runtime Configuration
      • Querying Supported Displays and Screen Resolutions
        • To query attached displays and detect available modes
      • Obtaining Additional Help
        • To get further help and view all available options
      • Modifying the Static Configuration (Optional)
      • Using nvidia-xconfig to Configure xorg.conf
        • Getting Help with nvidia-xconfig
        • Specifying a Custom EDID for the Display
        • Setting Color Bit-Depth
        • Specifying Modes
        • Enabling Debug Mode
        • Multi-Display X Server Layout
      • Configurations that Require Editing xorg.conf
        • Enabling Screen Saver Features
        • Configuring EDID Polling and Native Resolution
        • Enabling Blending and Video Overlays
  • Camera Development
    • Camera Software Development Solution
      • Camera Architecture Stack
      • Camera API Matrix
      • Approaches for Validating and Testing the V4L2 Driver
        • Applications Using libargus Low-Level APIs
        • Applications Using GStreamer with the nvarguscamerasrc Plugin
        • Applications Using GStreamer with V4L2 Source Plugin
        • Applications Using V4L2 IOCTL Directly
      • ISP Configuration
      • Infinite Timeout Support
      • Symlinks Changed by Mesa Installation
      • Other References
    • Sensor Software Driver Programming
      • Camera Core Library Interface
      • Direct V4L2 Interface
      • Camera Modules and the Device Tree
        • To add camera modules to a device tree
        • Module Properties
      • Individual Imaging Devices
        • Device Properties
        • Example Piece-Wise Linear Compression Function
        • Example Digital Overlap WDR Exposure Frame (3840×2160)
        • Port Binding
        • Sensor Pixel Clock
        • SerDes Pixel Clock
        • Port Index
      • V4L2 Kernel Driver (Version 1.0)
        • Macro Definitions
        • Sensor-Private Data
        • Configuring Regmap
        • Configuring Controls
        • To link the controls to their control handlers
        • Setting Up Control Registers
        • Power Functions
        • Setting Up the V4L2 Subdevice and Camera Common
        • Control Handlers
        • Device Tree Parser
        • Media Controller Setup
        • Sensor Driver Probing
        • Setup of Media Controller
        • Removing Sensor Drivers
      • V4L2 Kernel Driver (Version 2.0)
        • Macro Definitions
        • Sensor-Private Data
        • Register map (regmap)
        • Sensor Controls
        • Exposure Controls
        • Fixed Point Format
        • Control Handlers
        • Setter Control Handlers (for Writing Settings)
        • Fill-String Control Handlers (for Reading Settings)
        • How Controls Are Implemented
        • Registering the Controls
        • How to provide the link to the control handlers
        • Setting Up Registers for the Control Handler
        • Read-Write Wrapper in the Register
        • Power Functions
        • Stream Functions
        • Miscellaneous Functions
        • Control Operations
        • Boot-Time Initialization
      • Loadable Kernel Module (LKM)
        • To configure a sensor driver as a loadable module
        • To load a new sensor module
      • Kernel Configuration
      • Device Registration
        • Prerequisites
        • Device-tree overlay
        • To Create and Apply a DTB Overlay File
        • Using the Jetson-IO Tool
        • Using the Main Platform Device Tree File
        • To register a device using the main platform device tree file
      • Verifying the V4L2 Sensor Driver
        • To run a v4l2-compliance test
        • To run a v4l2-ctl test
      • Debugging Tips
        • To verify that driver name matches the name in the Device Tree
        • To verify that all device names match the device tree
        • To verify that the Device tree values match the hardware
        • To verify that functions run to completion
        • To verify that default values are correctly linked
        • To verify that control register values are correct
        • To verify that mode-specific settings are correct
        • To verify that I2C accesses are working properly
        • Configuring the Sensor Driver as a Loadable Kernel Module (LKM)
      • Mode Tables
        • To add a register mode table
        • Register mode table considerations
      • Camera Sensor Drivers Porting
        • How to find differences between release 28 and the current release
        • Changes for the V4L2 API
        • Changes to Device Tree Properties
        • Porting version 1.0 drivers to version 2.0
        • Device Tree
        • Driver
    • Jetson Virtual Channel with GMSL Camera Framework
      • Reference Setup
      • GMSL Protocol
      • GMSL Camera
      • CSI Connectivity
        • Jetson AGX Orin
        • Jetson Xavier NX Series
        • Jetson AGX Xavier Series
      • Hardware Module Connectivity
      • Software Framework and Programming
        • Driver Framework
        • Device Tree Programming
      • Constraints
      • Validation
      • Known Issues
        • General Issues
        • Xavier-Specific
        • Plugin Manager Board ID
    • Argus NvRaw Tool
      • Prerequisites for Use
      • Camera Sensor Modes
      • nvargus_nvraw Command
        • nvargus_nvraw Usage
        • Basic Examples
        • Displaying Sensor Information
        • Capturing Images
        • Other Operations
        • Limitations
    • Camera Driver Porting
      • Configuration Changes
      • Sensor Driver File Name Changes
      • Guarding Kernel Version-Specific Code
      • dev_err() Function
      • I2C API
      • NVIDIA Capture Driver Code Path
  • Security
    • Secure Boot
    • OP-TEE: Open Portable Trusted Execution Environment
      • OP-TEE in Jetson Linux
      • Architecture
        • Execution Steps
      • Trusted Application and Client Application Development
        • How to Implement a New Trusted Application or Port an Existing One
        • Types of Trusted Applications
      • Key Derivation Function of a Fuse Key and User-Defined Key
        • Encrypted Keyblobs
        • Encrypted Keyblob Overview
        • Encrypted Keyblob Format
        • EKB Header
        • EKB Content
        • EKB Binary Size Restrictions
        • Encrypted Keyblob Generation and Device Provisioning
        • Encrypted Keyblob Decryption
        • SE Keyslot Clearing
      • Secure Samples
        • Sample Pseudo Trusted Application: jetson_user_key_pta
        • hwkey-agent Trusted Application
        • nvhwkey-app Client Application
      • Key Maintenance and EKBs
        • KDF of Fuse Keys
        • Pseudocode for NIST-SP-800-108
        • EKB Generation
        • EKB Extraction
        • Tool for EKB Generation
        • EKB Extraction Sample
      • AES-256 Hardware Key Derivation Function in jetson_user_key_pta
        • Flow of the AES-256 Hardware KDF
        • API Functions
    • Disk Encryption
  • Communications
    • Jetson AGX Xavier PCIe Endpoint Mode
      • Hardware Requirements
      • Commands Must Be Run as Root
      • To flash the PCIe endpoint on a Jetson AGX Xavier series device
      • To connect and configure the devices
      • Testing Procedures
        • To prepare for testing
        • To access the shared RAM on the endpoint device
        • To access shared RAM on the root port system
        • To test bidirectional data transfer
      • To bring up an Ethernet interface over PCIE
    • Enabling Bluetooth Audio
      • To enable Bluetooth audio
    • Audio Setup and Development
      • ASoC Driver for Jetson Products
        • ALSA
        • DAPM
        • Device Tree
        • ASoC Driver
      • Audio Hub Hardware Architecture
      • ASoC Driver Software Architecture
        • Platform Driver
        • Codec Driver
        • ASoC Machine Driver
        • Clocking and Power Management
      • High Definition Audio
        • Features Supported
        • Software Driver Details
      • USB Audio
        • Features Supported
        • Software Driver Details
      • Board Interfaces
      • 40-pin GPIO Expansion Header
        • Pinmux Configuration
        • Device Tree Configuration for a Custom Audio Card
        • Enable Codec Driver
        • Update the Machine Driver to Support a Custom Audio Card
      • HD Audio Header
        • Audio Formats Supported
        • Usage Guide
      • Usage and Examples
        • Examples: I2S
        • Examples: DMIC
        • Example: DSPK
        • Examples: MVC
        • Examples: AMX
        • Examples: ADX
        • Examples: SFC
        • Examples: Mixer
        • Examples: HDMI/DP Playback
        • Examples: USB
      • Troubleshooting
        • No Sound Cards Found
        • Sound Not Audible or Not Recorded
        • I2S Software Reset Failed
        • XRUN Observed During Playback or Capture
        • Audio Pops and Clicks
        • Get More Help on NVIDIA Developer Forum
  • Clocks
    • To check clock status
    • Overriding Default Clock Rates
    • Configuring GPU Clocks
      • To run the GPU at a fixed frequency
    • Configuring VIC Clocks
    • VIC Dynamic Voltage and Frequency Scaling
    • Sysfs Paths for DVFS Control
      • Pathnames of Sysfs Nodes for DVFS Control
      • VIC DVFS Control Terminology
      • To enable or disable VIC DVFS
      • To customize VIC DVFS with control knobs
    • Setting the Static VIC Frequency
      • To set the static VIC frequency
    • Configuring Clocks
      • To change clock configurations in the kernel device driver module
      • To use PLLAON as clock source
      • Clocks that Can Have PLLAON as Parent
  • Platform Power and Performance
    • Jetson Orin NX Series and Jetson AGX Orin Series
      • Interacting Features
      • Kernel Space Power Saving Features
        • Chipset Power States
      • Clock and Voltage Management
        • Regulator Framework
      • CPU Power Management
        • Frequency Management with cpufreq
        • Idle Management with cpuidle
      • Memory Power Management
        • EMC Frequency Scaling Policy
      • Supported Modes and Power Efficiency
        • Power Mode Controls
      • Fan Profile Control
        • Fan Profile Configuration
        • nvfancontrol
      • Thermal Management
        • Linux Thermal Framework
        • Thermal Zone
      • Thermal Management in Linux
        • Thermal Sensors
        • Thermal Cooling
      • Thermal Management in BPMP
        • Thermal Sensing
        • SOC_THERM
        • BPMP Thermal Framework
        • Hardware Throttling
        • Hardware Thermal Shutdown
      • Thermal Specifications
      • Software-Based Power Consumption Modeling
        • Jetson AGX Orin Series
        • Examples
      • Related Tools and Techniques
        • CPU Hot Plug
        • CPU Frequency Scaling
        • GPU 3D Frequency Scaling
        • Getting and Setting Frequencies
        • Maximizing Jetson Orin Performance
        • Fan Speed Control
        • nvpmodel GUI
        • Jetson Power GUI
    • Jetson Xavier NX Series and Jetson AGX Xavier Series
      • Interacting Features
      • Kernel Space Power Saving Features
        • Chipset Power States
      • Clock and Voltage Management
        • Regulator Framework
      • CPU Power Management
        • Frequency Management with cpufreq
        • Idle Management with cpuidle
      • Memory Power Management
        • EMC Frequency Scaling Policy
      • Supported Modes and Power Efficiency
        • Power Mode Controls
      • Fan Profile Control
        • Fan Profile Configuration
        • nvfancontrol
      • Thermal Management
        • Linux Thermal Framework
        • Thermal Zone
      • Thermal Management in Linux
        • Thermal Sensors
        • Thermal Cooling
      • Thermal Management in BPMP
        • Thermal Sensing
        • SOC_THERM
        • AOTAG
        • BPMP Thermal Framework
        • Hardware Throttling
        • Hardware Thermal Shutdown
      • Thermal Specifications
      • Software-Based Power Consumption Modeling
        • Jetson Xavier NX Series
        • Jetson AGX Xavier Series
        • Examples
      • Related Tools and Techniques
        • CPU Hot Plug
        • CPU Frequency Scaling
        • GPU 3D Frequency Scaling
        • Getting and Setting Frequencies
        • Maximizing Jetson Xavier Performance
        • Fan Speed Control
        • nvpmodel GUI
        • Jetson Power GUI
  • Software Packages and the Update Mechanism
    • Installing Additional Packages
    • Repackaging Debian Packages
    • Building Kernel Debian Packages Yourself
    • Working with the Packages
      • Package Dependencies
      • nvidia-l4t-kernel
        • Pre-Dependencies and Dependencies
        • Package Scripts
      • nvidia-l4t-kernel-dtbs
        • Pre-Dependencies and Dependencies
        • Package Scripts
      • nvidia-l4t-kernel-headers
        • Pre-Dependencies and Dependencies
        • Package Scripts
      • nvidia-l4t-jetson-io
        • Pre-Dependencies and Dependencies
        • Package Scripts
    • Over-the-Air Update
      • Updating from the NVIDIA APT Server
        • Updating a Jetson Device
        • Updating a Host
        • Debian Packages on the NVIDIA APT Server
        • Customizing Debian Packages
      • Downloading Debian Packages for Later Use
    • Updating Jetson Linux with Image-Based Over-the-Air Update

Hardware References

  • Jetson Developer Kit Setup
  • Jetson EEPROM Layout
    • Configuration of Vendor-Specified MAC Addresses
    • Value of the CRC-8 Byte
  • Jetson Module Adaptation and Bring-Up
    • Jetson Xavier NX Series
      • Board Configuration
      • Board Naming
      • Root File System Configuration
      • MB1 Configuration Changes
        • Pinmux Changes
        • GPIO Changes
        • PMIC Changes
      • Porting the Linux Kernel
      • PCIe Controller Configuration
        • PCIe Controller Features
      • Porting USB (Universal Serial Bus)
        • USB Structure
        • Required Device Tree Changes
      • Flashing the Build Image
        • Setting Optional Environment Variables
        • To flash the build image
    • Jetson AGX Xavier Series
      • Board Configuration
      • Board Naming
      • Placeholders in the Porting Instructions
      • Camera Connector Pin Differences
      • Root File System Configuration
      • MB1 Configuration Changes
        • Pinmux Changes
        • GPIO Changes
        • PMIC Changes
        • Enabling the WDT_RESET_OUT_N Pin for Watchdog Timeout
      • Porting the Linux Kernel
      • PCIe Controller Configuration
        • PCIe Controller Features
      • Porting USB (Universal Serial Bus)
        • USB Structure
        • UPHY Lane Assignment
        • Required Device Tree Changes
      • Flashing the Build Image
        • Setting Optional Environment Variables
        • To flash the build image
    • Checklists
      • Hardware Bring-Up Checklist
        • Before Power-On
        • Initial Power-On
        • Initial Software Flashing
        • Power
        • Power Optimization
        • USB 2.0 PHY
        • USB 3.0
        • HDMI
        • Audio
        • UART
        • SD Card Pinouts
        • Fan
        • Sensors I2C: General
        • Sensors I2C: Touch Screen (Optional)
        • PEX (Optional)
        • SATA (Optional)
        • PCIe (Optional)
        • Embedded Display(s) (Optional)
        • Imager(s) (Optional)
      • Software Bring-Up Checklist
        • Preparation
        • Bring-up Hardware Validation
        • Boot Validation
        • Kernel and Peripherals, Port and Validation
        • System Power and Clocks
  • Hardware Reference Documentation
  • Configuring the Jetson Expansion Headers
    • Running Jetson-IO
      • Main Screen: Selecting a Header
      • Header Screen
      • Compatible Hardware Screen
      • Expansion Header Configuration Screen
      • Configuring the CSI Connector
      • Main Screen: Save
      • Command Line Interface
        • config-by-pin: View Header Configuration by Pin
        • config-by-function: Configure Header(s) by Special Function
        • config-by-hardware: Configure Header(s) by Hardware Module
    • Adding Support for Custom Hardware
      • Device Tree Overlays
      • Creating a Simple Device Tree Overlay
      • Creating a Custom Device Tree Overlay
  • Controller Area Network (CAN)
    • Important Features
    • Jetson Platform Details
    • Enabling CAN
      • Kernel DTB
      • Pinmux
    • Kernel Drivers
      • To load the CAN kernel drivers
    • Managing the Network
      • To set the interface properties
      • To install the CAN utilities
      • To transfer packets
    • Debug Methods
      • Loopback test
        • To perform a loopback test
      • Other Methods
    • Obtaining Higher Bit Rates
      • To configure the TDCR for higher bit rates
    • Changing the CAN parent clock on T194 platforms
    • Changing the CAN Clock Rate

Applications and Tools

  • Board Automation
    • Host System Setup
    • Basic Board Control
      • For Jetson AGX Orin
      • For Jetson AGX Xavier series
    • UART Access
  • Jetson Linux Toolchain
    • Toolchain Information
    • Downloading the Toolchain
    • Extracting the Toolchain
    • Setting the CROSS_COMPILE Environment Variable
  • Jetson Linux Development Tools
    • Debugging on Jetson Platforms
      • Debugging Improvements
      • CoreSight Trace Sinks ETF and ETR
      • AMBA Trace ID (ATID) Mapping
      • Uncore: Performance Monitor Unit
        • Device-Specific Features and Limitations
    • Debugging with Register Trace Buffers
      • To enable RTRACE
      • To start and stop RTRACE
      • Locating RTRACE Output
    • Program Trace Macrocell
    • Debugging the Kernel
      • Reconfiguring and Rebuilding the Kernel
        • To determine whether the kernel configuration must be modified
      • Modifying the Kernel Configuration File
      • Using KGDB
        • Starting KDGB at Boot from the Kernel Command Line
    • Tegrastats Utility
      • Reported Statistics
        • Example Output for T194 Platforms
      • Running tegrastats
        • To run tegrastats
        • To stop tegrastats
      • Re-Deploying tegrastats
        • To re-deploy tegrastats
      • tegrastats Command Line Options
  • How to Submit a Bug Report
    • To submit a bug report

Reference Material

  • Package Manifest
    • Bootloader
    • Kernel
      • Kernel Supplements TBZ2
      • Kernel Headers TBZ2
    • Tools
    • NV Tegra
      • Nvgstapps TBZ2
      • Config TBZ2
    • Graphics Demos
      • NVIDIA Drivers TBZ2
      • OP-TEE
      • NVIDIA Tools TBZ2
      • Weston TBZ2
  • Related Documentation
    • Application Notes and Other Documents
    • READMEs
  • Legal Information
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.