你好 @22399086,感谢你提供完整的串口日志!这是非常关键的诊断信息。
问题根因确认
根据日志分析,你的问题不是供电问题,而是**内核崩溃(Kernel Panic)**导致的系统死机。
关键错误定位
[ 15.233738] Unable to handle kernel paging request at virtual address 0000000000100108
[ 15.267557] Internal error: Oops: 0000000096000004 [#1] PREEMPT SMP
[ 15.544506] Kernel panic - not syncing: Oops: Fatal exception
崩溃信息解读:
| 字段 | 含义 |
|---|---|
update_load_avg+0x7c/0x5e0 |
调度器负载计算函数崩溃 |
Comm: (o_gadget) |
USB OTG Gadget 进程触发 |
FSC = 0x04: level 0 translation fault |
内存页表翻译错误 |
| 崩溃时间 | 启动后约 15 秒,正好是系统服务启动阶段 |
解决方案(按优先级)
方案 1:更新 miniboot(最可能解决)
社区案例 RDK X5 使用命令 Reboot 无法重启 中,类似问题通过更新 miniboot 解决。
# 1. 查看当前 miniboot 版本
cat /proc/device_tree/model
# 2. 下载最新 miniboot
# 访问 https://developer.d-robotics.cc/rdk_doc/RDK 搜索 "miniboot 更新"
# 3. 按官方文档更新 miniboot
# 通常需要:
# - 下载最新 miniboot 镜像
# - 通过 SD 卡或 NAND 烧录
# - 重启生效
方案 2:重新烧录最新官方镜像
你的内核版本是 6.1.83 #10 SMP PREEMPT Sun Sep 29 2024,这可能是旧版本镜像存在的已知 bug。
操作步骤:
# 1. 下载最新镜像
# 访问 https://developer.d-robotics.cc/ 下载 RDK X5 最新 Ubuntu 镜像
# 2. 格式化 SD 卡
sudo mkfs.ext4 /dev/mmcblk1p2 # 谨慎操作,确认设备号
# 3. 烧录镜像
# 使用官方烧录工具或 dd 命令
sudo dd if=rdk-x5-ubuntu22-preinstalled-desktop-xxx.img of=/dev/mmcblk1 bs=4M conv=fsync
# 4. 重新测试
方案 3:临时 workaround - 禁用 USB Gadget
如果急需使用,可以临时禁用 USB Gadget 功能避开崩溃点:
# 通过串口登录后执行
sudo systemctl disable usb-gadget.service
sudo reboot
日志中其他警告(次要问题)
| 警告 | 影响 | 建议 |
|---|---|---|
drobot_idle: timeout to wait idle: iso pd gpu to 0x0 |
GPU 电源域空闲超时 | 可能影响 GPU 性能,非崩溃根因 |
ft5406: i2c read error, -121 |
触摸屏通信失败 | 不影响系统稳定性 |
hobot-backlight: send command failed |
背光控制失败 | 不影响系统稳定性 |
OF: reserved mem: OVERLAP DETECTED! |
内存区域重叠 | 设备树配置问题,可能影响内存分配 |
建议行动
- 优先更新 miniboot(参考官方文档)
- 如果无效,重新烧录最新官方镜像
- 将串口日志补充到原帖子,方便官方技术支持进一步分析
相关社区案例
- RDK X5 使用命令 Reboot 无法重启,断电重新上电正常 - miniboot 更新解决
- 用 MobaXterm 连接开发板两分钟后断开 - 内核崩溃类似案例
请先尝试更新 miniboot! 根据社区经验,这类调度器相关的内核崩溃通常是底层固件 bug,更新后大概率能解决。如果问题依旧,请将完整日志提交给官方技术支持。