跳到主要内容

验证 eMMC 冷启动

OpenixCLI 的整盘读回校验发生在 FES 仍然运行时。它能证明 eMMC 中保存的字节正确,却不能证明芯片重新上电后能够从 Boot0 读取 SPL。烧录与冷启动是两个独立的完成条件。

完全断电后重新上电

  1. 等待 OpenixCLI 返回 Raw disk image flashed successfullyerrorCode=0
  2. 断开 OTG 和板卡电源,确认板卡已经完全掉电。
  3. 保持 CH340 的 GND、TX、RX 连接,串口参数使用 115200 8N1
  4. 恢复正常供电,保存从第一行开始的完整串口日志。

不要用软件 reboot 代替这一检查。软件重启时 DRAM、时钟或 eMMC 控制器可能保留部分状态,无法覆盖 BootROM 冷启动使用的初始条件。

检查 v9 的连续启动标志

U-Boot SPL 2026.07-dirty (Sep 01 2026 - 23:27:38 -0400)
LYNX_MMC_SAFE_IO: mmc=2 f_max=25000000 b_max=128

NOTICE: BL31: v2.12.0(debug):b5de74a68

U-Boot 2026.07-dirty (Sep 01 2026 - 23:27:38 -0400)
Found /extlinux/extlinux.conf
Starting kernel ...

Linux version 7.2.0-avaota-a1-mainline
VFS: Mounted root (ext4 filesystem) on device 179:2.

Avaota A1 mainline Linux / Buildroot 2026.05.1
avaota-a1 login:
启动交接日志说明停止时检查
BootROM → SPLBoot0 中的主线 SPL 可执行,MMC2 使用 25 MHz、4-bit、b_max=128Boot0 写入、TM4 初始化、FEL 恢复
SPL → BL31SPL 已从 User Area 读取 FITFIT 偏移、eMMC 多块读取
BL31 → U-BootTF-A 已进入 BL33FIT 入口地址和 U-Boot proper
U-Boot → LinuxFAT 中的 Image、DTB 和 extlinux 可读取文件路径、加载地址、启动参数
Linux → Buildroot/dev/mmcblk1p2 已挂载为 ext4 根分区eMMC DT、root 参数和 /sbin/init

检查根分区

登录后执行:

uname -a
cat /proc/cmdline
cat /proc/partitions
mount | grep ' on / '
free -h

实机记录中,Linux 识别到 58.2 GiB eMMC、mmcblk1p1mmcblk1p2,并以读写方式挂载 ext4 根分区。free -h 显示约 3.8 GiB 可用内存。

本版本可以枚举 eth0eth1usb0,但启动脚本仍会等待网络接口超时,MDIO address 1 也尚未通过验收。网络现象应单独记录,不能影响对 eMMC 冷启动链的判断。

执行第二次冷启动

再次完全断开电源并重新上电。第二次仍应依次进入 SPL、BL31、U-Boot、Linux 和 Buildroot;ext4 日志可能出现 recovery complete,随后应正常挂载根分区。

两次冷启动都进入登录提示,才能说明写入的 v9 系统不依赖 FES、软件重启残留状态或一次性的 eMMC 初始化结果。保存实机启动记录,供后续测试与发布阶段引用。