文章目录
这是Nvidia的Jetson NX启动的大致流程介绍,适用于Jetson Xavier NX和Jetson AGX Xiavier系列。其他系列的启动流程与本文档有差异。
英文版原文可参考:
https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/bootflow_jetson_xavier.html#wwpID0E0AE0HA
Linux分层和BootLoader介绍可以参考:
嵌入式Linux操作系统引导加载程序BootLoarder
启动软件启动流程大致如下:
Soc:System on Chip
BootRom: 即BR
MB: Microboot
Tboot:
BPMP:
BPMP-FW:
ATF:
CBoot: Cold Boot
BootROM
BootROM(BR)是通过硬件链接的方式安装在了处理器中。 它将初始化启动媒体(硬盘或外部存储)并从中加载Microboot1(MB1)。
BR-BCT(BootROM Configuration Table)是启动时的硬件初始化配置表,包含BootROM用于硬件初始化的配置参数。启动硬件/媒体的初始地址中存有多份BR-BCT硬件配置表。
BCT还包含有关引导加载程序(BL, bootloader)的信息,包括:
- Size:加载程序的大小
- Entry Point: 加载程序BL的程序进入点
- Load address:加载地址
- Hash哈希:对应的哈希
BootROM使用此信息来验证和加载引导加载程序。 引导流程如下:
BootLoader Components加载程序组成
对于NVIDIA Jetson Xavier NX和Jetson AGX Xavier系列,引导加载程序和闪存组件为:
- Microboot1(MB1)
- TBoot-BPMP
- CPU-BL
- TBoot-CPU(用于烧录flashing)