首页
/ OpenWrt项目下RAVPower RP-WD009设备的MMC卡读取问题分析与修复

OpenWrt项目下RAVPower RP-WD009设备的MMC卡读取问题分析与修复

2025-05-09 07:42:30作者:戚魁泉Nursing

在OpenWrt 24.10.0-rc6版本中,用户反馈RAVPower RP-WD009设备的板载MMC卡读取器无法正常工作。该问题表现为系统启动时持续输出错误日志,无论是否插入SD卡都会出现初始化失败的情况。

问题现象

设备启动后,内核日志中反复出现以下关键错误信息:

  • MMC控制器报告"no support for card's volts"(不支持卡电压)
  • SDIO卡初始化失败(error -22)
  • 频繁出现"Card stuck being busy"(卡忙状态阻塞)

这些错误导致MMC/SD卡完全无法被识别和使用,影响了设备的正常功能。

技术分析

该问题源于MTK MMC控制器驱动与设备硬件之间的兼容性问题。具体表现为:

  1. 电压协商失败:控制器无法正确识别卡的电压需求
  2. 初始化流程中断:在电压协商阶段就触发了错误条件
  3. 忙状态检测异常:控制器错误地认为卡处于持续忙状态

这些问题在之前的rc4版本中就有报告,但在rc6版本中仍未完全解决。

解决方案

开发团队通过提交1a75172721a1c917312105e9e0449fa431c0154c修复了此问题。该修复主要涉及:

  1. 完善了MTK MMC控制器的电压支持配置
  2. 优化了初始化流程的错误处理
  3. 改进了忙状态检测机制

验证结果

在OpenWrt 24.10.0正式版中,用户确认修复有效:

  • SDXC卡被正确识别为高速设备
  • 卡容量被准确识别(测试使用928GB容量卡)
  • 分区信息正确显示(p1分区)
  • 在LuCI界面中也能正常显示存储设备状态

技术建议

对于使用类似MT76x8平台设备的用户,如果遇到MMC/SD卡读取问题,建议:

  1. 确保使用最新版OpenWrt固件
  2. 检查内核日志中是否有电压协商错误
  3. 确认设备树配置中MMC控制器参数正确
  4. 对于大容量卡(如SDXC),验证控制器是否支持exFAT文件系统

此案例展示了OpenWrt社区对硬件兼容性问题的高效响应,也体现了开源固件持续优化改进的特点。

登录后查看全文
热门项目推荐
相关项目推荐