资讯动态

Jetson Orin 启动链

发布时间:2026/10/26 18:23:37 来源:尧图企业网站定制
Jetson Orin 启动链QSPI UEFI一、核心架构总览Jetson Orin采用「片内固化ROM QSPI NOR Flash多级Bootloader UEFI标准引导」的分层启动架构核心规则第一启动介质唯一所有Bootloader级固件必须存放在板载QSPI Flash中芯片上电后必须从QSPI启动第一阶段无法直接从eMMC/NVMe/SD卡启动Bootloader。UEFI替代传统U-Boot/CBoot从JetPack 5.xL4T 35.x开始Orin全面使用UEFI作为主引导程序提供标准化的启动管理、安全启动、多设备引导与固件升级能力。系统与引导分离内核、设备树、根文件系统存放在外部存储eMMC / NVMe SSD / SD卡 / USB由UEFI加载执行QSPI仅负责引导链路本身。完整启动链路总览片内BootROM → PSCROM安全校验 → MB1 → MB2 → UEFI → Linux内核 → 根文件系统二、冷启动全流程分步拆解从上电到进入系统阶段0片内ROM启动BootROM PSCROM执行主体Orin芯片内部固化的ROM代码不可修改、不可刷写运行处理器BPMP电源管理处理器Orin内置的微控制器核心作用建立最基础的硬件环境完成第一级安全校验加载QSPI中的第一级Bootloader。步骤0.1 上电复位与BootROM执行芯片上电或硬复位后BPMP处理器立即执行片内BootROM代码初始化最小系统时钟、QSPI控制器、片内SRAM静态内存读取硬件引脚的启动选择配置确认第一启动介质为QSPI Flash读取QSPI Flash起始位置的BR_BCTBootROM启动配置表获取MB1固件的存储地址、大小与校验信息步骤0.2 PSCROM安全校验PSCROM是片内另一块固化ROM专门负责安全验证从芯片熔丝区加载NVIDIA原厂密钥与OEM密钥校验MB1固件的数字签名与哈希值确认固件未被篡改若开启安全启动会同步解密MB1固件校验失败则启动终止步骤0.3 加载MB1到片内SRAM校验通过后BootROM将MB1固件从QSPI Flash复制到片内SRAM中然后跳转到MB1的入口地址移交控制权。阶段1MB1Microboot Stage 1执行存放位置QSPI Flash运行处理器BPMP处理器核心作用完成核心硬件初始化尤其是DDR内存为后续阶段提供运行空间。MB1由NVIDIA签名加密用户无法修改。步骤1.1 核心硬件初始化初始化DDR内存控制器执行DRAM时序训练、频率校准与容量检测初始化存储控制器eMMC、SD卡、PCIe、USB的底层硬件接口初始化电源域、时钟树、引脚复用完成芯片级平台配置加载BPMP处理器自身的运行固件bpmp.bin步骤1.2 加载MB2到DRAM从QSPI Flash中读取MB2固件校验其数字签名将MB2固件复制到已经初始化完成的DDR内存中跳转到DRAM中的MB2入口地址移交控制权阶段2MB2Microboot Stage 2执行存放位置QSPI Flash运行处理器BPMP处理器后期启动主CPU核心作用完善外设初始化搭建安全执行环境加载UEFI并唤醒主CPU。步骤2.1 外设与调试接口初始化初始化I2C、GPIO、UART串口、SPI等基础外设启动调试串口输出后续所有启动日志均可通过串口查看读取板载EEPROM信息识别模组型号与载板配置步骤2.2 安全世界环境搭建从QSPI加载TOS可信操作系统如OP-TEE固件初始化安全世界EL3异常级别加载EKS加密密钥存储为安全启动、硬件加密提供密钥支持配置内存隔离区保护安全世界资源不被普通系统访问步骤2.3 加载UEFI并唤醒主CPU从QSPI Flash中读取UEFI固件镜像校验签名后加载到DDR内存的指定地址释放主CPUCortex-A78AE集群的复位信号主CPU开始执行BPMP进入后台运行模式主CPU接管后续引导流程跳转到UEFI入口阶段3UEFI 固件引导核心调度阶段存放位置QSPI Flash运行处理器主CPUARM Cortex-A78AEEL2异常级别核心作用标准化的固件接口层枚举所有启动设备加载Linux内核与设备树完成硬件到操作系统的交接。步骤3.1 UEFI内部执行阶段UEFI自身遵循标准UEFI规范分四个子阶段执行SEC阶段安全阶段初始化CPU缓存、临时栈建立最基础的运行环境PEI阶段EFI前期初始化初始化内存、基础IO枚举平台硬件资源DXE阶段驱动执行环境加载存储、USB、PCIe、显示等设备的UEFI驱动初始化所有外设BDS阶段启动设备选择进入启动逻辑是引导系统的核心环节步骤3.2 启动设备枚举与优先级BDS阶段会按默认优先级扫描所有可启动存储设备第一优先级可移动设备SD卡 USB存储设备第二优先级固定存储设备NVMe SSD eMMC UFS若开启网络启动PXE设备会加入优先级队列可在UEFI设置界面手动修改启动顺序或通过L4TConfiguration.dtbo配置文件修改默认优先级。步骤3.3 读取启动配置文件UEFI选中目标启动设备后会读取设备启动分区中的/boot/extlinux/extlinux.conf配置文件解析配置文件中的内核路径、设备树路径、initrd路径、内核启动参数若extlinux.conf不存在则回退到存储设备的kernel、dtb分区中加载默认镜像支持多启动项配置可在启动时选择不同内核或系统版本步骤3.4 加载内核并移交控制权将Linux内核镜像Image、设备树二进制dtb、initrd镜像从存储设备加载到DDR内存填充内核启动参数cmdline配置内存布局、硬件预留信息切换CPU异常级别跳转到Linux内核入口地址UEFI将硬件资源完全移交给内核阶段4Linux内核与系统启动内核解压与初始化内核自解压初始化所有硬件驱动完成内存管理、进程调度、文件系统初始化挂载根文件系统根据启动参数中的root参数挂载对应分区的根文件系统用户态启动启动systemd进程管理器依次加载系统服务、驱动模块最终进入登录界面或桌面环境三、QSPI Flash 深度解析3.1 为什么选用QSPI NOR Flash高可靠性NOR Flash支持随机地址读取擦写寿命远高于NAND Flash适合存放极少修改、必须可靠的Bootloader固件独立安全与系统存储物理分离即使系统盘损坏、刷写失败也不会影响启动引导可通过UEFI或恢复模式修复XIP支持支持就地执行早期阶段无需将代码全部复制到内存即可运行适配片内SRAM空间有限的场景标准容量Orin模组标配32MB/64MB QSPI仅存放Bootloader固件空间充足3.2 QSPI Flash 完整分区表QSPI采用GPT分区格式核心分区与功能如下基于官方flash_t234_qspi.xml配置分区名称核心功能BR_BCTBootROM配置表存储MB1的地址、校验信息与启动参数MB1第一级Bootloader固件完成DDR初始化MB2第二级Bootloader固件搭建安全环境、加载UEFIBPMP-BLOBBPMP处理器运行固件与配置TOS可信操作系统OP-TEE固件安全世界环境EKS加密密钥存储区安全启动与硬件加密密钥UEFIUEFI固件主镜像主引导程序RECROOT恢复模式固件支持OTA与恢复启动GPT/Secondary GPTQSPI自身的分区表备份DTB引导阶段设备树供UEFI使用3.3 QSPI与系统存储的分工存储介质存放内容刷写时机QSPI FlashBootROM配置、MB1/MB2、UEFI、安全固件、引导DTB刷机时同步更新或通过胶囊更新单独升级外部存储eMMC/NVMe/SDLinux内核、设备树、根文件系统、用户数据系统刷机、内核替换、日常读写四、关键实操与调试4.1 单独刷写QSPI固件正常刷机时会自动同步更新QSPI若仅需升级Bootloader可在主机Linux_for_Tegra目录下执行# 开发板进入恢复模式后单独刷写QSPI全部分区sudo./flash.sh-kQSPI jetson-agx-orin-devkit internal也可通过UEFI胶囊更新无需进入恢复模式在系统内即可升级QSPI固件。4.2 进入UEFI设置界面开发板接显示器与键盘或通过串口连接调试终端上电后在NVIDIA Logo界面出现时反复按Esc键进入UEFI设置菜单后可选择Boot Manager手动选择启动设备或修改启动顺序、安全启动等配置4.3 查看完整启动日志所有启动阶段的日志均可通过调试串口查看串口参数115200 波特率8N1无流控日志顺序BootROM → MB1 → MB2 → UEFI → 内核启动日志是排查启动故障的核心手段4.4 常见启动故障排查完全无启动日志优先检查供电、硬件复位若串口无任何输出大概率是QSPI固件损坏需进入恢复模式重刷QSPI停在UEFI界面找不到启动设备检查系统存储是否正常连接确认存储设备中有有效系统与extlinux.conf内核启动失败检查设备树与内核匹配性确认启动参数与根文件系统路径正确

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑