Quick Start Guide
Architecture
Package Manifest
Jetson Xavier Package Manifest
Boot Loader
Kernel
Kernel Supplements TBZ2
Kernel Headers TBZ2
NV Tegra
Nvgstapps TBZ2
Config TBZ2
NVIDIA Drivers TBZ2
NVIDIA Tools TBZ2
Weston TBZ2
Software Features
Jetson Xavier Software Features
Bootloader
Toolchain
Kernel I/O Interfaces
LSIO
HDMI
DP
PCIE
SDMMC
SATA
SATA-Marvel (over PCIe)
UFS
Security Engine
USB 3.0
EQOS
Max-Q and Max-P
RTC
Watchdog
System
CUDA
Graphics
EGL Details
GL and Vulkan Details
Multimedia
Video Decoders
Video Encoders
Display Outputs
Conversion, Scaling, and Rotation Formats
CSI and USB Camera Formats
BPMP I2C Master
SPE-UART
SPE DMA
I2C Slave
CAN
Audio
Setting Up Your File System
Sample Root File System
Setting Up the Root File System
Step 1: Set Up the Root File System
Step 2: Copy the rootfs to the Device
Hardware Setup
Reference Board Preparation
Platform Board Layout
BSP Customization
Boot Options
CBoot Boot Options
Node Properties
Examples
Rebuilding the DTB
Linux Host System Prerequisites
Extracting Tegra Linux Driver Package
Login Credentials
Installing Additional Packages
Configuring NFS Root on the Linux Host
Determining Version and Platform Information
Flashing and Booting the Target Device
Before You Begin
Before You Begin
Flash Script Usage
Increasing Internal Memory Partition for Root File System
Determining the Success of a Driver Update
Boot Loader
Jetson-Xavier Boot Flow
BootROM
Boot Loader Components
Common Driver Framework
<top>/vendor/nvidia/tegra/bootloader/partner/t19x/common/Microboot1
TegraBoot
TegraBoot-BPMP
TegraBoot-CPU
CBoot
Partition Configuration
Jetson-Xavier Mass Storage Partitions Configuration
Partition Configuration File
Default Partition Overview
Kernel Customization
Obtaining the Kernel Sources with Git
Manually Downloading and Expanding Kernel Sources
Building the NVIDIA Kernel
Preparing to Build External Kernel Modules
Building External Kernel Modules
Kernel Boot Time Optimization
Device Tree Nodes
Real-time Clock
Environment Configuration
Disable Console over UART
Secondary Bootloader
Compile-Time Configuration
Asynchronous Probe
File System
Sound
Modularize Kernel Driver
Disable Debugging
Display Configuration and Bringup
Setting HDMI or DP Screen Resolution
Mirroring or Extending Displays
Hard-coding Kernel Display Boot Mode for HDMI
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)
Building the AARCH 64 Toolchain and glibc
Toolchain Information
Downloading the Pre-Built Toolchain
Building the Toolchain
Troubleshooting
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 Support
Symlinks Changed by Mesa Installation
Other References
Sensor Driver Programming Guide
Camera Modules and Device Tree
Individual Imaging Device
V4L2 Kernel Driver
Macro Definitions
Sensor-Private Data
Configuring Regmap
Configuring Controls
Setting Up Control Registers
Read-Write Wrapper in the Register
Power Functions
Setting Up V4L2 Sub-device and Camera Common
Control Handlers
Set Control
Get-Volatile Control
Boot-Time Initialization
Removing Sensor Drivers
Kernel Configuration
Device Registration
Using Plugin Manager
Using Main Platform Device Tree File
Verifying the V4L2 Sensor Driver
Debugging Tips
Mode Tables
Multimedia
Multimedia API
GStreamer-based Multimedia Playback
Installing GStreamer
Using NvGstPlayer
GStreamer API
GStreamer-based Camera Capture
Clock Frequency and Power Management
Clocks
Overriding Default Clock Rates
Configuring GPU Clocks
Configuring Clocks
Power Management for Jetson-Xavier Devices
Interacting Features
Kernel-Space Power Saving Features
Chipset Power States
Clock and Voltage Management
CPU Power Management
Idle Management with cpuidle
Memory Power Management
EMC Frequency Scaling Policy
Max-Q and Max-P Power Efficiency
Thermal Management
Linux Thermal Framework
Thermal Zone
Configuring a Thermal Zone Using the Device Tree
Thermal Sensing in Linux
NCT Sensors
BPMP Sensors
Thermal Cooling
Fan Management
Clock Throttling
Software Thermal Shutdown
Thermal Management in BPMP
Thermal Sensing
SOC_THERM
AOTAG
BPMP Thermal Framework
Hardware Throttling
Hardware Thermal Shutdown
Software-based Power Consumption Modeling
Related Tools and Techniques
3D Frequency Scaling
Setting Frequencies
Maximizing Jetson Xavier Performance
Using CPU Hot Plug
Applications and Tools
Design for Debugging
DFD Improvements
CoreSight Trace Sinks ETF and ETR
CoreSight AMBA Trace ID (ATID) Mapping
Debugging with Register Trace Buffers
Locating RTRACE Output
Program Trace Macrocell
Using the PTM
Decode Trace Example
Debugging the Kernel on Tegra Devices
Reconfiguring and Rebuilding the Kernel
Modifiying the Configuration Files
Using KGDB
At Boot: Kernel Command Line
Graphics Sample Application
tegrastats Utility
Reported Statistics
Running tegrastats
Re-Deploying tegrastats
tegrastats Options
How to Submit a Bug Report
Related Documentation
Legal Information
Quick Start Guide
Legal Information