问题分析
你的情况是典型的 eMMC 分区表损坏。TF 卡能启动说明核心功能正常,但 eMMC 的 GPT 签名错误导致无法识别。
解决方案
步骤 1:从 TF 卡启动进入系统
插入 TF 卡,上电启动,通过串口登录系统。
步骤 2:进入 U-Boot 清除 eMMC 分区表
重启开发板,在串口看到 Hit any key to stop autoboot 时快速按任意键,进入 U-Boot 命令行:
# 查看 eMMC 设备
mmc info
# 清除 eMMC 前 100MB(包含 GPT 分区表)
mmc dev 0
mmc erase 0 0x19000
# 或者更彻底的清除(清除整个 eMMC)
mmc erase 0 0x1e84800
步骤 3:重新烧录系统
方法 A:使用 hbupdate 工具烧录
# 在主机上执行
hbupdate-gui.py x3_ubuntu_v3.03.img
方法 B:使用 U-Boot 的 ota 命令
在 U-Boot 中:
# 通过 USB 加载镜像
usb start
fatload usb 0 0x6000000 x3_ubuntu_v3.03.img
# 写入 eMMC
otawrite all 0x6000000 <image_size> emmc
步骤 4:验证 GPT 分区表
烧录完成后,在 U-Boot 中检查:
gpt verify mmc 0
如果显示 Verification successful 则说明分区表正常。
注意事项
-
21 年旧版 X3M 的特殊性:早期版本的设备树和 miniboot 可能与新系统不兼容,建议:
- 优先使用 3.0 之前 的系统版本测试
- 如需使用 3.03,可能需要更新 miniboot
-
供电问题:确保使用 5V/3A 电源,供电不足会导致烧录失败
-
如果上述方法无效:可能需要通过 JTAG 或联系官方技术支持
相关参考
- GUID Partition Table Header signature is wrong - 类似 GPT 错误案例
- 从零到桌面:RDK X3 烧录避坑指南 - 完整烧录教程
建议:如果问题仍未解决,请按 特定领域问题发帖模板 补充以下信息:
- 硬件获取渠道
- 当前系统镜像版本
- 完整的串口日志
- hbupdate 烧录界面截图