NVIDIA Jetson 为什么选择 UEFI,而不是 U-Boot?

NVIDIA JETSON AGX XAVIER 刷机后黑屏问题排查指南 本文针对NVIDIA JETSON AGX XAVIER刷机后出现黑屏的常见问题,提供了一套从硬件连接到软件层面的系统性排查指南。文章详细讲解了如何通过检查HDMI线缆与转接器、使用串口控制台获取启动日志、调整显示配置及选择合适JetPack版本等方法,帮助开发者快速定位并解决黑屏故障,确保设备正常启动并投入AI开发工作。 阅读详情

📺 B站 嵌入式孙老师:博主个人介绍

📘 博主书籍-京东购买链接*:Yocto项目实战教程

📘 加博主微信,进技术交流群: jerrydev


NVIDIA Jetson 为什么选择 UEFI,而不是 U-Boot?

很多做嵌入式 Linux 的同学,看到 Jetson Orin、Jetson Thor 的启动结构时,第一反应可能是:

为什么 NVIDIA Jetson 不像 RK、i.MX、Allwinner 那样使用 U-Boot?
为什么新版本 Jetson 变成了 UEFI?
那之前的 CBoot 又是什么?

这个问题表面上是在问 UEFI 和 U-Boot 的区别,本质上其实是在问:

Jetson 到底是一块普通 ARM 开发板,还是一个面向量产、安全、OTA、AI 边缘计算的复杂计算平台?

在这里插入图片描述

答案也很直接:

Jetson 并不是不能用 U-Boot,而是从 Orin / Thor 这一代开始,NVIDIA 官方 BSP 更适合使用 UEFI 来统一管理启动、安全、OTA、多启动设备和量产维护。


一、先把几个概念讲清楚

1. U-Boot 是什么?

U-Boot 是一个具体的开源 bootloader 项目。

在很多嵌入式 Linux 平台中,启动链路通常是:

BootROM
  ↓
SPL / TPL
  ↓
U-Boot
  ↓
Linux Kernel
  ↓
RootFS

比如 RK3568、RK3588、i.MX6、i.MX8、Allwinner、STM32MP1 等平台,很多都是这个思路。

U-Boot 负责:

初始化部分硬件
选择启动设备
读取 kernel / dtb / initrd
传递 bootargs
启动 Linux kernel

所以在传统嵌入式 Linux 里,U-Boot 是非常重要的一环。


2. UEFI 是什么?

UEFI 不是某一个具体 bootloader 程序,而是一套标准。

更准确地说:

UEFI = Unified Extensible Firmware Interface
     = 统一可扩展固件接口

它定义的是:

操作系统启动之前,平台固件应该如何工作
平台固件和操作系统之间应该如何交互
启动项、启动顺序、安全启动、EFI 应用应该如何管理

可以类比理解:

类型标准具体实现
编程语言C 语言标准GCC / Clang
操作系统接口POSIXLinux / BSD
启动固件UEFIEDK2 / NVIDIA Jetson UEFI
嵌入式 bootloader无统一强标准U-Boot

所以:

U-Boot 是一个具体 bootloader
UEFI 是一套启动固件标准
Jetson UEFI 是 NVIDIA 基于 EDK2 做出来的具体 UEFI 固件

NVIDIA 文档中也明确说明,UEFI 是一种行业规范,用来描述平台固件和操作系统之间的标准接口,并且在 Jetson Linux 中替代 CBoot 作为 CPUBL,也就是 CPU bootloader。


3. CBoot 又是什么?

CBoot 是 NVIDIA 之前在 Jetson 平台上使用的自家 bootloader。

可以简单理解为:

CBoot = NVIDIA 老版本 Jetson 使用的后级 bootloader

在早期 Jetson Linux rel-32 时代,Jetson 平台大量使用 CBoot。到了 Jetson Linux rel-34 之后,NVIDIA 开始使用 UEFI 替代 CBoot。NVIDIA 官方文档明确写到:CBoot was used in the prior rel-32 release, and is now replaced with UEFI starting with rel-34 release and onward。

也就是说,Jetson 的历史大致可以这样看:

早期 Jetson:
BootROM → TegraBoot / CBoot / U-Boot → Linux

Jetson rel-32:
BootROM → MB1 / MB2 / CBoot → Linux

Jetson rel-34 之后:
BootROM → MB1 / MB2 → UEFI → Linux

二、Jetson 真的完全没用过 U-Boot 吗?

不是。

Jetson 不是从来没有用过 U-Boot。

在较早的 Jetson Nano、TX1、TX2 时代,NVIDIA L4T 文档里明确写到:U-Boot 是部分受支持平台上的默认 bootloader。旧版 flashing 文档中也提到,Jetson Nano、Jetson TX1 需要 U-Boot,Jetson TX2 默认使用 U-Boot,并由 U-Boot 从 rootfs 的 /boot/Image 加载 Linux kernel。

所以不能简单说:

Jetson 从来不用 U-Boot

更准确的说法应该是:

早期 Jetson 支持过 U-Boot
中间阶段大量使用 NVIDIA 自家的 CBoot
Orin / Thor 这类新平台官方主启动链改成 UEFI

三、Jetson 的启动链和普通 ARM 板不一样

普通 ARM Linux 板子经常是:

BootROM
  ↓
SPL
  ↓
U-Boot
  ↓
Linux

但 Jetson Orin 这类平台的官方启动结构是:

BootROM
  ↓
PSCROM
  ↓
MB1
  ↓
MB2
  ↓
UEFI
  ↓
Linux Kernel

NVIDIA 当前 Jetson Boot Architecture 文档中,Orin 系列启动流明确包含 BootROM、PSCROM、MB1、MB2、UEFI 等阶段;Thor 文档中也继续采用 NVIDIA 自己的多阶段安全启动结构。

这说明一个重要事实:

Jetson 的 bootloader 不是一个单独的 u-boot.bin,而是一整套启动体系。

它包括:

BootROM
MB1
MB2
BCT
安全固件
UEFI
L4TLauncher / GRUB
kernel / dtb / initrd
rootfs

四、为什么 U-Boot 在 Jetson 新平台上的价值下降了?

因为 Jetson 上很多传统上由 U-Boot 负责的事情,已经被 NVIDIA 的前级固件体系接管了。

比如:

DDR 初始化
PMIC 配置
pinmux 配置
GPIO 初始状态
安全认证
fuse 检查
启动链校验
firmware 加载
RCM / flash 流程

这些工作不是从 UEFI 才开始做,也不是 U-Boot 能完全替代的。

以 Orin 为例,MB1 是 NVIDIA 拥有的二进制组件,用户可以通过 MB1-BCT 对它的行为进行平台化配置;MB1 会做早期初始化、加载 firmware、配置 PMIC、创建 memory carveout,并加载下一级 bootloader。

所以在 Jetson 上,即使引入 U-Boot,它也只能放在后级:

BootROM
  ↓
MB1
  ↓
MB2
  ↓
U-Boot
  ↓
Linux

但是这样做的价值并不大,因为前面最关键的 NVIDIA 平台私有启动、安全、烧录、BCT、firmware 加载流程,仍然绕不开 MB1 / MB2。


五、NVIDIA 为什么选择 UEFI?

1. UEFI 更适合标准化启动

Jetson 越来越不像传统开发板,而更像一台 ARM64 AI 计算机。

它要支持:

eMMC 启动
SD 启动
NVMe 启动
USB 启动
PXE 网络启动
HTTP Boot
GRUB
EFI Application
多启动项
启动顺序管理

这些正是 UEFI 擅长的领域。

在 Jetson UEFI 文档中,NVIDIA 提供了 Boot Order Selection,并支持通过 DefaultBootPriority 配置启动设备顺序,例如:

DefaultBootPriority {
    data = "usb,nvme,emmc,sd,ufs";
    locked;
};

也就是说,UEFI 不是简单地把 kernel 拉起来,而是提供了更标准的 Boot Manager 机制。

对于一块量产平台来说,这很重要。

因为产品可能有不同启动介质:

开发阶段:USB / NVMe
量产阶段:eMMC / UFS
维护阶段:Recovery / Network Boot
升级阶段:A/B Slot / OTA

如果都通过一套标准启动框架管理,平台维护会更清晰。


2. UEFI 更适合安全启动

Jetson 面向机器人、工业视觉、自动驾驶、边缘 AI、医疗设备、安防、储能等场景,这些场景不只是要求能启动 Linux,更要求:

启动链可信
固件不可被篡改
kernel 不可被替换
rootfs 可加密
支持 OP-TEE
支持 fTPM
支持 Secure Boot
支持防回滚

NVIDIA Secure Boot 文档中说明,Jetson 的 Root of Trust 从 NVIDIA SoC fuse 开始,用来认证 boot code;到 bootloader 之后,当前 bootloader,也就是 UEFI,会使用 UEFI Security Keys 机制继续认证后续 payload。

可以理解为两段安全链:

NVIDIA SoC 安全链:
BootROM → MB1 → MB2 → UEFI

UEFI 安全链:
UEFI → EFI Application / GRUB / Kernel / initrd

如果使用 U-Boot,NVIDIA 需要额外维护 U-Boot 和整套安全链的深度适配。

而使用 UEFI,可以更自然地复用标准化的 Secure Boot、EFI 应用签名、Boot Manager、UEFI variables 等机制。


3. UEFI 更适合 OTA 和 A/B 冗余

量产产品最怕什么?

不是第一次能不能启动,而是:

升级失败怎么办?
断电升级怎么办?
kernel 损坏怎么办?
rootfs A 启不起来怎么办?
如何回退到 B?
bootloader 怎么保证冗余?

Jetson 的 bootloader 更新和冗余机制不是只改一个环境变量这么简单。NVIDIA 的 Update and Redundancy 文档中提到,boot slot 由 BootROM 选择,MB1 和 MB2 会使用 slot number。

这说明 Jetson 的 A/B 冗余不是单纯 Linux 层逻辑,而是深入到启动链前级。

UEFI 放在 MB2 后面,可以更好地承接:

Boot slot
Rootfs A/B
Boot chain status
Kernel / DTB selection
Recovery boot
OTA rollback

对于 NVIDIA 来说,用 UEFI 统一维护这部分,比在 U-Boot 上重新适配一套完整机制更合理。


4. UEFI 更适合 GRUB / EFI 生态

Jetson 默认 OS Loader 是 L4TLauncher。

在较新的 Jetson UEFI 文档中,NVIDIA 明确说明 L4TLauncher 是 UEFI 的默认 OS Loader,路径通常对应:

EFI/BOOT/BOOTAA64.efi

同时,Jetson 也支持使用 GRUB 启动。文档中说明,如需使用 GRUB,需要挂载 ESP 分区,备份默认的 BOOTAA64.efi,然后安装 grub-efi-arm64-bin 等组件。

这让 Jetson 的启动方式更接近标准 ARM64 计算平台:

UEFI
  ↓
BOOTAA64.efi / L4TLauncher / GRUB
  ↓
extlinux.conf / grub.cfg
  ↓
Image + DTB + initrd
  ↓
Linux

这对于 Ubuntu、Yocto、自定义 rootfs、多系统启动、NVMe 启动都更友好。


5. UEFI 更适合“边缘服务器化”的 Jetson

过去我们看嵌入式板子,更多关注:

能不能启动 Linux
网口能不能通
串口有没有 log
设备树对不对

但现在的 Jetson Orin / Thor 更像边缘 AI 服务器。

它关心的是:

多启动介质
安全启动
远程升级
OTA 回滚
NVMe rootfs
PXE 网络启动
磁盘加密
OP-TEE
fTPM
启动 logo
量产烧录
版本冗余
平台配置

这些能力如果全部堆在 U-Boot 里,当然也不是完全做不到,但 NVIDIA 需要承担很高的长期维护成本。

UEFI 的优势在于:

标准化
生态成熟
安全模型清晰
和 ARM64 Server / PC 启动模型接近
更适合复杂平台维护

所以 NVIDIA 选择 UEFI,不是因为 U-Boot 不行,而是因为 Jetson 的平台定位变了。


六、UEFI 替代的是谁?不是 MB1 / MB2,而是 CBoot

这一点很容易混淆。

UEFI 并不是替代 BootROM、MB1、MB2。

它替代的是后级 CPU bootloader,也就是过去的 CBoot。

可以这样画:

老的理解

BootROM
  ↓
MB1 / MB2
  ↓
CBoot
  ↓
Linux

新的理解

BootROM
  ↓
MB1 / MB2
  ↓
UEFI
  ↓
L4TLauncher / GRUB
  ↓
Linux

所以 UEFI 不是把整个启动链都替换了,而是把 CBoot 这一层换成了更标准、更开放、更适合复杂启动场景的固件框架。


七、对比一下 U-Boot、CBoot、UEFI

项目U-BootCBootUEFI
本质开源 bootloader 项目NVIDIA 自家 bootloader启动固件标准
常见场景传统嵌入式 Linux老版本 JetsonPC、服务器、ARM64 平台、新 Jetson
是否标准化嵌入式生态标准事实,但不是 UEFI 规范NVIDIA 私有行业规范
可定制性很强依赖 NVIDIA BSP可改,但固件体系更复杂
安全启动可支持,但需平台适配NVIDIA 自家体系标准 Secure Boot 生态
多启动设备支持,但平台相关支持有限Boot Manager 天然支持
GRUB / EFI app非原生非原生原生支持
Jetson 新平台不是官方主链路被替代官方主链路

一句话总结:

U-Boot 更像传统嵌入式 bootloader
CBoot 是 NVIDIA 过去的私有 bootloader
UEFI 是 NVIDIA 新平台选择的标准化启动固件体系

八、这对 Jetson Orin / Thor Bring-up 有什么影响?

如果你做过 RK、i.MX,再来看 Jetson,很容易用错思路。

在 RK 平台上,你可能重点看:

u-boot defconfig
u-boot dts
SPL
bootcmd
extlinux.conf

但在 Jetson Orin / Thor 上,应该换成这个思路:

早期硬件初始化:
MB1-BCT / MB2-BCT

pinmux / GPIO / pad voltage:
pinmux 配置表 / MB1 配置

PMIC / 上电时序:
PMIC Configuration / BCT

PCIe / USB / UPHY:
UPHY Lane Configuration

启动设备顺序:
UEFI BootOrder / DefaultBootPriority

启动模式:
L4TLauncher Boot Mode

kernel / dtb / initrd:
extlinux.conf / boot 分区 / kernel-dtb 分区

rootfs:
APP 分区 / NVMe / eMMC / UFS / Yocto rootfs

安全启动:
fuse / PKC / SBK / UEFI Secure Boot Keys

也就是说,Jetson 的适配重点不是问:

U-Boot 在哪里?

而是应该问:

MB1-BCT 配对了吗?
pinmux 对了吗?
PMIC 时序对了吗?
UEFI boot order 对了吗?
kernel dtb 选对了吗?
extlinux.conf 对了吗?
rootfs 分区对了吗?

这才是 Jetson bring-up 的核心。


九、用 Thor / Orin 的启动链再串一次

以现代 Jetson 平台来理解,可以简化成:

上电
  ↓
BootROM
  ↓
NVIDIA 安全启动前级
  ↓
MB1
  ↓
MB2
  ↓
UEFI
  ↓
L4TLauncher / GRUB
  ↓
Linux Kernel + DTB + initrd
  ↓
RootFS

其中:

BootROM:
芯片内部固化代码,负责最早期启动和安全根

MB1:
早期平台初始化,读取 BCT,配置部分硬件

MB2:
继续初始化,加载后级 bootloader,参与 flashing / RCM / cold boot

UEFI:
标准化后级启动固件,管理启动顺序、启动模式、EFI app、安全启动

L4TLauncher / GRUB:
OS Loader,负责加载 kernel / dtb / initrd

Linux Kernel:
真正进入操作系统

这和传统嵌入式 Linux 的区别非常明显。

传统板子经常是:

BootROM → SPL → U-Boot → Linux

Jetson 新平台更像:

BootROM → NVIDIA 前级固件 → UEFI → OS Loader → Linux

十、为什么这个变化很重要?

因为这代表 Jetson 的定位变化了。

早期 Jetson 更像开发板:

能跑 Linux
能跑 CUDA
能接摄像头
能做 AI demo

现在 Jetson Orin / Thor 更像量产级边缘 AI 平台:

机器人
工业视觉
自动驾驶
边缘服务器
多传感器融合
高可靠 OTA
安全启动
设备加密
长期维护

当平台从“开发板”走向“量产计算平台”,启动系统就不能只追求简单,而要追求:

标准化
安全性
可维护性
可升级性
可恢复性
生态兼容性

这就是 NVIDIA 从 CBoot 转向 UEFI 的核心原因。


十一、最终总结

NVIDIA Jetson 为什么选择 UEFI,而不是继续走 U-Boot?

可以总结成 6 点:

1. Jetson 的早期启动链高度平台私有,MB1 / MB2 / BCT 无法被 U-Boot 简单替代。

2. U-Boot 更适合传统嵌入式 Linux,而 Orin / Thor 更像标准 ARM64 AI 计算平台。

3. UEFI 天然支持 Boot Manager、BootOrder、EFI Application、GRUB、PXE、NVMe、USB 等标准启动能力。

4. Jetson 的 Secure Boot、OP-TEE、fTPM、磁盘加密、A/B、OTA 等能力,更适合和 UEFI 体系结合。

5. CBoot 是 NVIDIA 旧版本私有 bootloader,rel-34 之后被 UEFI 替代,属于平台演进而不是简单换名字。

6. NVIDIA 选择 UEFI,本质是为了量产、安全、维护、标准化和复杂启动场景,而不是因为 U-Boot 不够好。

最关键的一句话是:

Jetson 不是不用 U-Boot,而是新一代 Jetson 已经不再是普通 ARM 开发板,
它需要的是一套更标准、更安全、更适合量产维护的启动固件体系。

所以对于 Jetson Orin / Thor 开发者来说,最实用的理解不是纠结:

为什么没有 U-Boot?

而是建立新的启动认知:

BootROM / MB1 / MB2 负责 NVIDIA 平台早期启动和安全链
UEFI 负责标准化启动管理
L4TLauncher / GRUB 负责加载 OS
extlinux.conf / kernel dtb / initrd 负责进入 Linux

理解了这条链路,再看 Jetson 的刷机、BCT、pinmux、UEFI、OTA、rootfs、Yocto 适配,就会清晰很多。

Jetson orin更改uefi启动logo sudo ./flash.sh -r -k A_cpu-bootloader 载板参数(根据你实际硬件来写) mmcblk0p1。以上是nvidia官方给的流程,切记这些操作不能在jetson设备上,否则后面编译不过,小编已经替大家测试过了。pc机是X86主机,ubuntu18.04和ubuntu20.04的设备均可以,本次使用ubuntu18.04。sudo ./flash,sh 载板参数(实际硬件来写)mmcblk0p1。然后开始刷机可以全部覆盖也可以单独刷引导程序。 阅读详情

相关推荐

Jetson TK1 SSH远程登录完全指南:从串口初始化到稳定连接

SSH(Secure Shell)是Linux嵌入式设备实现安全远程管理的基础协议,其核心原理基于非对称加密认证与TCP加密隧道构建。在边缘AI开发中,SSH不仅提供命令行访问能力,更承载文件传输、端口转发和多终端协同等关键工程价值。典型应用场景包括Jetson系列开发板的CUDA环境调试、传感器数据采集及模型部署运维。由于TK1出厂默认禁用SSH服务、无图形界面且依赖串口初始化,用户常面临串口通信失败、网卡命名变更、sshd_config配置遗漏等系统级障碍。本文聚焦NVIDIA Jetson TK1平台

weixin_27017211的博客 351

【Jetson Xavier NX】Jetson Xavier NX的UEFI 的配置详解

Jetson Xavier NX的UEFI 的配置详解

Adimecoin的博客 3812

Jetson Nano入门核心误区与正确启动实践

嵌入式AI开发板是边缘智能落地的关键载体,其本质是异构计算架构下的专用推理平台,而非通用单板计算机。理解GPU-CPU协同原理、BootROM启动链路与硬件加速驱动绑定机制,是掌握NVIDIA Jetson系列的基础。Jetson Nano作为入门级边缘AI平台,以5W超低功耗支持ResNet-50/YOLOv3-tiny实时推理,凸显其在能效比与部署轻量化上的技术价值,广泛应用于智能摄像头、ROS机器人、工业质检等场景。本文聚焦Jetson Nano的硬件定位、烧录三关、最小AI流水线构建及典型实战陷阱,

weixin_34354173的博客 369

Jetson开机黑屏问题

摘要:Jetson开机黑屏可能由UEFI故障、Linux系统故障或桌面配置故障导致。本文针对第三种情况进行分析,发现是误修改/etc/rc.local文件影响了桌面加载。解决方案通过SSH连接实现:1)用USB线连接Ubuntu主机和Jetson;2)检查192.168.55.100连接;3)SSH登录后修改rc.local文件;4)重启rc-local服务。此方法成功恢复了桌面显示,解决了开机黑屏问题。

qq_39599112的博客 2253

避坑指南:给你的Jetson Nano/NX扩容前,必须搞懂的Ext4、GPT和BootLoader原理(附实操脚本)

本文深入解析Jetson Nano/NX扩容过程中的关键技术原理,包括Ext4文件系统、GPT分区表和U-Boot引导机制。通过详细的技术拆解和实战脚本,帮助开发者避免常见扩容陷阱,确保系统稳定启动。特别针对NVIDIA Jetson设备的存储架构和Linux启动流程进行了专业分析,提供排错指南和优化建议。

weixin_33693070的博客 268

Jetson Orin NX L4T35.4.1平台自启动时间优化调试记录1

尝试优化Orin NX (p3767+p3768)与R35.4.1 BSP的启动时间;从USB引导Orin设备;最初,引导时间是55-57秒;在内核端进行了一些优化之后,我们现在是38-40秒;正试图在15秒内启动Orin设备,但是UEFI本身需要12秒才能完成(2)在不需要的文件中禁用驱动程序- NVIDIA.common.dsc.inc和NVIDIA.fvmain.fdf.inc(3)创建image。

jzwjzw19900922的博客 1099

Jetson 启动流程全解析 —— 对比 NXP i.MX 系列的核心理解

本文对比分析了NVIDIA Jetson与NXP i.MX系列的启动流程。Jetson采用多阶段启动,包含PSC ROM、MB1/MB2、UEFI等环节,安全机制完善,逐步向PC服务器式标准化发展;i.MX则保持传统嵌入式设计,遵循ROM→SPL→U-Boot→Linux的经典路径,更强调定制灵活性。核心差异在于:Jetson偏向通用计算的标准化启动,而i.MX注重嵌入式场景的定制化。两者在安全验证、协处理器参与等方面也各有特色,体现了不同SoC的设计理念。

Interview_TC的博客 1244

FPGA防抄板实战:如何利用Xilinx芯片的“身份证”(DNA)实现你的加密锁?

本文深入探讨了如何利用Xilinx FPGA芯片的DNA(Device Native Authentication)功能实现硬件级加密保护,防止设计被抄袭。文章详细解析了DNA的物理实现、获取方式,并提供了从DNA到加密密钥的转换方法,以及构建商业级加密防护系统的实战方案。通过JTAG和原语两种读取方式的对比,帮助开发者选择最适合的方案。

weixin_42548829的博客 382

Jetson Orin 更换uefi logo

本文介绍了在Ubuntu 20/22系统上搭建EDK2 UEFI开发环境并编译NVIDIA Jetson固件的完整流程。主要内容包括:1) 安装Docker并配置EDK2开发环境;2) 克隆NVIDIA EDK2代码库;3) 修改Jetson配置参数;4) 编译生成UEFI固件镜像;5) 处理启动LOGO图片资源;6) 将生成的uefi_jetson.bin文件复制到刷机目录进行刷机。教程详细记录了从环境搭建到固件生成的全过程操作命令,特别针对Jetson Orin系列开发板的UEFI固件编译提供了具体配置

梁俊星的博客 302

二叉树随机漫步

元旦快乐! 学习到中本聪bitcoin的文章的calculation部分的时候,出现了binomial random walk,不是很明白什么是random walk。发现这个文章写的很好:https://blog.youkuaiyun.com/fireguard/article/details/16111603 随机漫步,也叫随机游走,最早是物理学中做"布朗运动"的微观粒子的运动形态来形成的一个模型,布朗运...

gjq5464的博客 1737

电路方案分析(十二)USB Type-C PD 移动电源参考设计方案

TPD8S300为USB Type-C连接器的CC1,CC2,SBU1和SBU2引脚集成了四个通道的20v短到vbus和过压保护。TPD8S300集成了八个IEC61000-4-2ESD保护通道,用于USB Type-C连接器的CC1、CC2、SBU1、SBU2、DP_T (顶侧D-) 、DM_T (顶侧D-) 、DP_B (底侧D-) 引脚。当电源组是接收器并为其自身的电池充电时,该芯片会对电池充电,而在电源模式期间,该芯片充当DC-DC转换器以生成VBUS。

小幽余生不加糖 2万+

Jetson Secure Boot 完整解析:PKC、SBK、签名流程与熔丝机制

本文详细解析了NVIDIA Jetson平台的安全启动(Secure Boot)机制。通过BootROM、熔丝(Fuses)、PKC/RSA密钥体系和SBK/AES加密构建了完整的可信启动链(Chain of Trust),确保从硬件启动到操作系统内核的每个环节都经过严格验证。文章系统讲解了Secure Boot的核心价值、整体架构、PKC和SBK两大关键机制,并提供了详细的7步实施流程:从软件包安装、密钥生成到熔丝烧录和签名镜像刷写。最后阐述了启动时的完整验证流程,为开发者构建安全可靠的Edge AI产品

Interview_TC的博客 1321

2024年全国大学生电子设计竞赛A题_AC-AC变换电路并联运行

AC-AC变换电路并联运行(A 题)【本科组】

qq_74395263的博客 7832

Jetson Orin Nano Super NVMe启动全栈调试指南

Jetson Orin Nano Super并非传统嵌入式开发板,而是一台基于ARM架构GPU的微型AI服务器,其启动本质是固件重映射与启动链重构。理解BootROM→CBoot→U-Boot→Kernel四级校验机制,是解决黑屏、串口无输出、NVMe无法识别等故障的前提。技术价值在于突破虚拟机USB透传限制、精准匹配NVMe协议兼容性(如Phison/Samsung固件版本)、构建符合GPT+ESP规范的启动分区,并手动干预flash.sh底层设备映射逻辑。典型应用场景包括ROS2导航部署、Carla仿真

weixin_34277853的博客 292

TTL电路搭建半加器实验:操作指南完整版

通过TTL电路搭建半加器,详解逻辑设计与实验步骤,帮助掌握数字电路中的半加器工作原理与实际应用,适合电子技术初学者动手实践。

weixin_42524864的博客 355

【JAVA】海康威视门禁机ISAPI接口开发,人脸上传更新接口

本文实现了一个HTTP工具类HTTPClientUtil,提供GET/POST/PUT/DELETE请求方法,支持摘要认证。工具类封装了Apache HttpClient,设置连接超时、最大连接数等参数,通过DeviceInfoDTO传递设备IP、端口和认证信息。文中还展示了两个应用示例:userInfoAdd()用于添加人员信息,FaceDataRecordAdd()用于添加人脸数据,均通过POST请求与设备ISAPI接口交互。该工具类简化了HTTP请求处理,支持设备管理系统的集成开发。

qq_27246521的博客 586

预编译UEFI Shell启动盘:免编译、真硬件验证、开箱即用

UEFI Shell是运行在固件层的轻量级命令行环境,基于UEFI规范实现,不依赖操作系统即可执行memmap、pci、bcfg等底层调试命令。其技术价值在于提供固件级可观测性与可控性,支撑NVMe识别、启动项修复、Secure Boot审计等关键场景。然而EDK2编译链复杂、环境敏感、跨平台兼容性差,导致大量工程师陷入Python版本、GCC适配、PE头校验等构建陷阱。本文提供的预编译IA32/X64架构UEFI Shell文件,经真实主板冷启动验证、固件签名合规检查及功能压力测试,直击‘编译恐惧症’痛点

weixin_34167819的博客 287

第二节:Vben Admin 最新 v5.0 (vben5) + Python Flask 快速入门 - Python Flask 后端开发详解(附源码)

大家好,我是cuiwin!本节内容,我们从零开始开发基于Python(Flask)的后端项目,对接Vue Vben Admin(vben5)。登录mysql数据库执行: 创建数据库。

cuiwin的专栏 2260

Jetson Xavier NX BSP 架构解析

Jetson Xavier NX的BSP是一个由NVIDIA设计的复杂软件栈,包含UEFI引导、JetPack SDK(含L4T Ubuntu、CUDA等AI工具)、BPMP协处理器(负责电源/时钟管理)和基于设备树的硬件抽象层。其架构特点包括从U-Boot转向UEFI启动、深度定制的Linux内核,以及通过Yocto/SDK Manager实现灵活构建。该BSP为边缘AI计算提供强大支持,但开发门槛较高,需要掌握多项专业技术才能充分发挥其性能潜力。

激昂网络的博客 489

[ 虚拟专用网 ] IPsce 虚拟局域网(安全的IP协议的虚拟专用网)详解(二) --- 安全联盟SA

???? 博主介绍 ????‍???? 博主介绍:大家好,我是_PowerShell,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 ????点赞➕评论➕收藏 == 养成习惯(一键三连)???? ????欢迎关注????一起学习????一起讨论⭐️一起进步????文末有彩蛋 ????作者水平有限,欢迎各位大佬指点,相互学习进步! 目录 ???? 博主介绍 一、什么是安全联盟 二、协商参数两种方式:(手动、IKE) 1. 手动 2.

qq_51577576的博客 2801

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

linux Jetson 常用的命令

本文整理了Linux系统开发与内核编译相关的实用技术笔记,主要内容包括: 开发环境配置:Eclipse快捷键、Python版本切换、NodeJS安装、代理设置、SSH配置等 系统优化:swap空间调整、桌面环境配置、软件源修改、依赖问题解决 内核开发: 内核源码获取与编译配置 设备树文件编辑与转换 摄像头驱动移植与CSI接口配置 内核调试方法及驱动开发路径 Jetson平台专项: Xavier/Nano平台开发环境搭建 MIPI摄像头配置 无头模式烧录方法 常见问题解决:包括I2C禁用、权限配置、依赖冲突等

jackwei86的博客 190

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Jetson刷机原理与APX协议深度解析

嵌入式AI开发板的系统烧录并非传统重装,而是涉及BootROM、BCT、U-Boot等多级启动链的底层固件重构。其核心依赖NVIDIA专有的APX协议——一种绕过操作系统、直连SoC物理层的USB通信机制,需Linux主机配合tegrarcm等闭源工具完成字节级镜像写入。该技术保障了Jetson硬件安全启动与签名验证,但也带来高门槛:RCM模式触发、BCT配置匹配、eMMC分区校验及USB物理层稳定性均直接影响成功率。本文聚焦Jetson系列(Nano/Orin)刷机本质,解析APX交互流程、常见失败根因与

weixin_34146805的博客 448

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

终极ARM设备多系统启动指南:使用Ventoy在树莓派等ARM设备上制作万能启动U盘

你是否曾经为树莓派、NVIDIA Jetson或其他ARM设备寻找一个可靠的多系统启动方案?Ventoy作为一款革命性的开源工具,彻底改变了传统启动盘的制作方式。这款强大的多系统启动工具不仅支持x86/x64架构,还全面兼容ARM64(AArch64)架构,让你在ARM设备上也能轻松创建和管理多系统启动U盘。无需反复格式化,只需复制镜像文件即可启动,Ventoy为ARM设备用户带来了前所未有的便利

gitblog_00320的博客 143

Jetson Orin Nano Developer Kit 刷写 Super Kit 配置实战指南

在嵌入式系统与边缘计算领域,设备树(Device Tree)是描述硬件资源配置的核心数据结构,它定义了CPU核心数、GPU单元、内存控制器等关键信息,直接影响系统对硬件能力的识别与调度。其原理在于,引导加载程序(Bootloader)在启动时会加载设备树二进制文件(DTB),内核据此初始化硬件。这项技术的价值在于,它允许开发者在不更换物理硬件的前提下,通过修改底层配置来充分挖掘硬件潜力,实现性能提升,尤其在资源受限的边缘AI设备上意义重大。应用场景广泛,包括AI推理加速、高吞吐量视频流处理以及多任务边缘服务

weixin_30628077的博客 405
上一篇: 一篇文章看懂原理图中的 MOS 管:NMOS / PMOS 怎么识别、怎么用?
下一篇: Jetson 启动 LOGO 无黑屏切换:从 Bootloader 到 APP 首屏的显示接力机制解析
嵌入式孙老师
博客等级 码龄7年 5686粉丝 898原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值