Files
LFLede/RM520N-5G/文档/RM520N-故障排查与自启链路.md
2026-08-21 18:28:33 +08:00

42 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# RM520N-GL 5G 模块故障排查与自启链路(2026-08-20 更新)
## 开机自启链路(已验证可靠)
```
/etc/modules.d/90-pcie_mhi (pcie_mhi mhi_mbim_enabled=1) 驱动加载
/etc/rc.d/S95modem5g (等待 /dev/mhi_MBIM 后起 quectel-CM -s wonet)
/etc/rc.d/S96wan5g-route (策略路由 from 200.0/24 lookup wan5g + MASQUERADE)
```
- **无需**在 rc.local 里手动 bind mhi_q(那会抢设备导致 SYS_ERR
- 飞牛断电重启后,原生流程自动恢复拨号(2026-08-20 实测:rmnet_mhi0.1 = 10.xping 223.5.5.5 ≈ 8.9ms
## 故障现象:5G 起不来 / 模块 SYS_ERR
**症状**:无 rmnet_mhi0.1、无 /dev/mhi_DUN|MBIM、只有 /dev/mhi_BHI、无 quectel-CM 进程
**dmesg**`dev_state:SYS_ERR``probe failed error -5/-110`
### 排查顺序(重要教训)
1. **优先断电重启飞牛**(模块真正断电复位;istoreos 内 reboot 不动 PCIe 供电,治不好 SYS_ERR
2. 若重启无效,**临时手动唤醒**
```
echo 0000:00:0a.0 > /sys/bus/pci/drivers/mhi_q/bind
```
mhi_q = pcie_mhi 驱动注册名。bind 后 /dev/mhi_MBIM 出现,rmnet 接口建立)
3. **不要**手动 unbind/rmmod pcie_mhi / rescan 折腾——会把设备弄成"无驱动孤儿",反而更难恢复
### 已确认的死路(勿重复踩)
- 禁用 modules.d 里的内核 mhi 驱动(mhi_pci_generic 等)**无效**:它们是 PCI autoloadmodalias 拉起的),禁 modules.d 拦不住
- 手动 rmmod pcie_mhi + 重 insmod **不唤醒**refcnt 仍 0
## 移远 pcie_mhi 驱动机制
- `/lib/modules/6.6.144/pcie_mhi.ko`alias 为 `MHI_CORE`(非标准 PCI ID 匹配)
- insmod 后 PCI probe 函数注册为驱动名 **mhi_q**dmesg 里 `mhi_q 0000:00:0a.0` 就是 pcie_mhi 在跑)
- 与内核 `mhi_pci_generic`(识别为 qcom-sdx65m,需装高通固件,实际加载失败)竞争同一设备
- 模块正常时 pcie_mhi 首发 probe 能成功;异常时需要 bind mhi_q 手动唤醒
## 5G 出口行为(2026-08-20 实测)
- IPv4 HTTP/HTTPS 国内站点:正常(baidu 200
- 国外明文 HTTP(如 neverssl.com):可能被运营商/防火墙过滤(返回空/卡住)
- 5G 出口 **无 IPv6**curl -6 返回 000
- 主路由双 WAN failover 检测可能因此误判:若主路由用国外站点/双栈做健康检查会误报"外网不通"