Air780EPM 在 Allwinner T113(EHCI Host)上 RNDIS/ECM 网口二层不通(ARP 失败),急需技术支持
-
我们在 Allwinner T113(sunxi USB EHCI Host) + Air780EPM 项目上遇到 USB 虚拟网口无法与模组侧网关通信 的问题,已通过 AT 验证模组蜂窝数据正常,但 Linux 主机侧 RNDIS / ECM 数据面不通。现整理现象与日志如下,恳请协助判断是 模组 USB 网口策略/固件 问题,还是 与 T113 USB Host 的兼容性 问题,并给出可操作的解决办法。
一、环境说明模组:Air780EPM(EC618 系,VID/PID:0x19d1 / 0x0001)。
主机:全志 T113,Linux 5.4(Tina 定制);模组接 USB1 Host(EHCI1)。
对比参考:同一模组在 NUC980 板上 RNDIS 静态 IP(如 192.168.10.2/24,网关 192.168.10.1)可正常上网;T113 上 相同网段配置不可达网关。现场无法对插同一套硬件做 AB,但网段与用法与 NUC980 一致。
二、模组与 AT 侧(已验证正常)AT+RNDISCALL? → +RNDISCALL: 1
AT+SETUSB? → mode: 1,Vid: 0x19d1,Pid: 0x0001(按文档使用 RNDIS+ACM 组合;后文亦测试 ECM)。
AT+CPIN? READY,AT+CGATT? 附着正常;AT+CIICR / AT+CIFSR 可取得运营商侧 PDP IP。
AT+CIPSTART="TCP",… 可 CONNECT OK,说明 模组蜂窝数据与协议栈工作正常。
三、Linux 侧现象(异常)枚举与驱动
RNDIS:dmesg 可见 rndis_host … eth1: register 'rndis_host' … RNDIS device。
切 AT+SETUSB=2(ECM)后:cdc_ether … eth1: register 'cdc_ether' … CDC Ethernet Device。
ttyACM0/1/2 可打开,与文档描述一致。
网络层主机配置:eth1 使用 192.168.10.2/24(与 NUC980 及文档常见网段一致),网关 192.168.10.1。
ping 192.168.10.1 100% 丢包。
ip neigh show dev eth1:192.168.10.1 FAILED(ARP 无法完成,非单纯 DHCP 问题)。
udhcpc -i eth1 仅有 discover,无租约,与 ARP 失败一致。
内核告警(节选)曾出现:NETDEV WATCHDOG: eth1 (rndis_host): transmit queue 0 timed out。
USB 重枚举时:cdc_acm … failed to set dtr/rts(多出现在 disconnect 前后)。
四、已做过的排查(摘要)内核已开启 CONFIG_USB_USBNET、CONFIG_USB_NET_RNDIS_HOST、CONFIG_USB_NET_CDCETHER、CONFIG_USB_ACM 及 sunxi EHCI Host;与合宙文档「Linux RNDIS/ECM」主机侧要求一致,dmesg 已能绑定 rndis_host / cdc_ether。
RNDIS 与 ECM 均已测试,均无法完成到 192.168.10.1 的 ARP,问题不仅限于 RNDIS。
已尝试 关闭 USB 设备 autosuspend、核对 AT+RNDISCALL / AT+SETUSB;现象依旧。
说明:问题不在「认不出网卡」或「少装驱动」,而在 USB 网口与主机之间的数据面(二层/发送路径)。

Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号