【FAQ】全志R329以太网网络不通或丢包严重怎么解决?
-
1.【问题现象】
现象1:ifconfig eth0 up正常,但一直无法动态获取ip地址,有如下类似打印:
[ 12.296892] libphy: gmac0: probed [ 12.420621] sunxi-gmac gmac0 eth0: eth0: Type(7) PHY ID 001cc916 at 0 IRQ poll (gmac0-0:00) [ 15.524572] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 23.708540] sunxi-gmac gmac0 eth0: Link is Up - 100Mbps/Full - flow control rx/tx root@TinaLinux:/# root@TinaLinux:/# udhcpc -i eth0 udhcpc: started, v1.27.2 udhcpc: sending discover udhcpc: sending discover udhcpc: sending discover
现象2:ifconfig eth0 up正常,配置静态ip地址后,无法ping通对端设备,有如下类似打印:
root@TinaLinux:/# ifconfig eth0 192.168.1.100 root@TinaLinux:/# root@TinaLinux:/# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 36:C9:E3:F1:B8:05 inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::34c9:e3ff:fef1:b805/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:239 dropped:0 overruns:0 frame:0 TX packets:232 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:77384 (75.5 KiB) Interrupt:124 root@TinaLinux:/# root@TinaLinux:/# ping 192.168.1.101 PING 192.168.1.101 (192.168.1.101): 56 data bytes
2.【问题分析】
通常原因是tx或rx通路某条通路不通,tx通路异常导致数据发不出去,同理rx通路异常导致接收不到数据。
注:- tx通路指发送数据通路,路径为mac->phy->rj45->…
- rx通路指接收数据通路,路径为…->rj45->phy->mac
3.【排查步骤】
- 配置静态ip地址,和对端设备处于同一子网内,同对端设备互相ping;
- 开发板ping对端设备,通过ifconfig eth0命令检查对端设备能否收到数据,若能收到,则说明开发板tx通路正常,否则tx通路异常;
- 对端设备ping开发板,通过ifconfig eth0命令检查开发板能否收到数据,若能收到,则说明开发板rx通路正常,否则rx通路异常;
- 若tx通路异常,可调整dts gmac模块的tx-delay参数并通过"cat /sys/devices/platform/soc/gmac0/extra_tx_stats"确认是否有错误包,
或者对照硬件原理图检查tx通路是否异常,如漏焊关键器件; - 若rx通路异常,可调整dts gmac模块的rx-delay参数并通过"cat /sys/devices/platform/soc/gmac0/extra_tx_stats"确认是否有错误包,
或者对照硬件原理图检查rx通路是否异常,如漏焊关键器件; - 检查phy供电与GPIO耐压是否匹配;
注:
- RGMII接口对时钟和数据的相位要求比较严格,因此通常需要调整tx-delay和rx-delay参数保证数据传输的正确性;
- tx-delay:tx clk延迟,取值0~7,一档约536ps(皮秒);
- rx-delay:rx clk延迟,取值0~31,一档约186ps(皮秒);
-
-
-
-
-
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号