ZHDA242 July   2026 TDA4VE-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 简介
    1. 1.1 动机
    2. 1.2 范围
    3. 1.3 目标引导架构
  5. 背景
    1. 2.1 J721S2 启动流程
    2. 2.2 OSPI NOR 闪存概述
    3. 2.3 UBI 和 UBIFS 概述
  6. OSPI 闪存布局
    1. 3.1 分区布局
    2. 3.2 引导加载程序分区
    3. 3.3 根文件系统分区
  7. 刷写引导元件
    1. 4.1 引导元件概述
    2. 4.2 识别 OSPI MTD 分区
    3. 4.3 将引导元件刷写到 OSPI NOR 闪存中
    4. 4.4 验证引导元件
  8. 创建 UBIFS 根文件系统
    1. 5.1 准备 RootFS 分区
    2. 5.2 创建 UBI 设备
    3. 5.3 创建 UBIFS 卷
    4. 5.4 验证 UBIFS 操作
  9. 将 Linux 引导工件存储在 UBIFS 中
    1. 6.1 挂载 UBIFS 根文件系统卷
    2. 6.2 使用 BusyBox 创建根文件系统结构
    3. 6.3 验证 BusyBox 执行
    4. 6.4 创建 BusyBox 命令链接
    5. 6.5 创建 init 脚本
    6. 6.6 使用 chroot 测试根文件系统
    7. 6.7 复制 Linux 内核映像和 DTB
  10. 从 UBIFS 配置 Linux 引导
    1. 7.1 配置引导参数
    2. 7.2 从 UBIFS 加载内核和 DTB
    3. 7.3 测试 Linux 引导
    4. 7.4 创建可重复使用的引导命令
  11. 完全从 OSPI NOR 闪存引导 Linux
    1. 8.1 自动执行 U-Boot 中的引导序列
    2. 8.2 端到端引导流程
  12. 总结
  13. 10参考资料

J721S2 启动流程

J721S2 器件使用多级引导进程来初始化系统并加载 Linux 操作系统。

该器件上电时,首先执行片上 ROM 引导加载程序。根据配置的引导模式,ROM 从所选引导介质加载 tiboot3.bin。tiboot3.bin 映像会初始化基本器件资源并加载 tispl.bin。

tispl.bin 映像执行额外的系统初始化,包括 DDR 配置和加载系统固件元件。初始化完成后,tispl.bin 将加载并启动 U-Boot。

U-Boot 负责加载 Linux 内核映像和设备树 blob (DTB)、准备 Linux 引导参数,并将控制权转移到 Linux 内核。

本应用手册中实现的引导序列如下所示。

ROM → tiboot3.bin → tispl.bin → U-Boot → Linux Kernel → Linux User Space

这项工作的目标是将该引导链的所有元件存储在 OSPI NOR 闪存中,并消除对 eMMC 存储的任何依赖。