Skip to main content

验证主线系统从 eMMC 冷启动

v9 已在 OpenixCLI 完成整盘写入和读回校验后,连续两次完全断电启动到 Buildroot root shell。冷启动测试验证的是 BootROM、DRAM、eMMC Boot0 和主线启动链,不由烧录工具的成功提示代替。

在 shell 中执行一次 reboot 成功,只能证明“已经运行起来的系统还能重启”。OTG 仍然连接、PMIC 和部分控制器状态尚未完全消失时,板卡走过的路径并不等同于用户下一次接通电源。

这一轮要真正拔掉 OTG、让板卡完全掉电,再只保留电源和串口启动。这样 BootROM、DRAM training、eMMC 硬件分区选择和各控制器复位都会从头发生,能揭示暖重启掩盖的问题。

断开 OTG 连接

只保留两类连接:

拔掉 OTG 数据线,也不要连接可启动的 TF 卡或 USB 存储设备。这样能够排除 FEL、USB 启动和其他存储介质对结果的影响。

串口可以保留,因为它只观察 UART,不提供系统镜像。USB 转串口模块不要给板卡反向供电,否则主电源断开后某些电源域仍可能保持,测试就不再是完整冷启动。

执行断电冷启动

  1. 在系统中执行 poweroff,等待串口停止输出。
  2. 断开板卡电源至少 10 秒。
  3. 确认 OTG、TF 卡和 USB 存储均未连接。
  4. 开始保存新的串口日志。
  5. 接通电源,不按键干预 U-Boot。
  6. 登录后执行身份与挂载检查。
uname -r
findmnt -no SOURCE,FSTYPE,OPTIONS /
cat /proc/cmdline
lsblk -o NAME,SIZE,FSTYPE,LABEL,MOUNTPOINTS

重复验证冷启动

一次成功可能掩盖 eMMC 初始化时序、电源稳定性或随机重定位问题。先完成与 v9 发布验收一致的两次冷启动,并记录结果:

次数SPL → FITU-Boot → extlinuxLinux → rootfs登录成功启动用时
1
2

启动用时可以从串口日志的时间戳计算,不需要追求绝对性能;重点是两次结果是否一致、是否总在同一阶段出现异常。

两次通过是 v9 Release 的实机验收结果,不等同于可靠性认证。如果任一次失败,就按日志停点归类并扩大样本;两次全过也只能说明当前电源、温度和板卡样本下没有复现。

分别记录冷启动、重启与复位

测试保留的状态用途
reboot电源与部分硬件状态可能保留检查正常软件重启
按复位键供电保留,SoC 重新启动检查复位路径
完全断电再上电不依赖上次运行状态证明 eMMC 独立启动

发布前至少要求软件重启、复位和完全断电三种路径均能进入同一主线系统。若只有 reboot 成功,应优先检查 DRAM 初始化、eMMC SPL 时钟、供电复位和 U-Boot 重定位,不能把结果归因于 Linux 用户空间。

更换电源适配器、eMMC 器件批次或提高 MMC 时钟后,应重新执行冷启动组,因为这些变化会影响上电与采样条件;仅修改用户空间工具时则通常不需要重新验证 BootROM 和 SPL 时序。