有熟悉 Atheros 解决方案和 OpenWrt 系统的人吗?我的测试平台在 Atheros-SDK 映像下运行良好,而在 OpenWrt 映像上运行时发现我的以太网接口(eth0)出现“ping 100% 丢包”。我什至继续使用寄存器的设置值,例如ETH_CONF,XMII_CONF,但它还不起作用。
任何建议将不胜感激。谢谢!我在 arch/mips/ath79/mach-db120.c 的以太网设置是:
ath79_register_mdio(0, ~(BIT(5)));
ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
ath79_eth0_data.phy_mask = BIT(5);default is BIT(0)
ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev;
ath79_eth0_pll_data.pll_1000 = 0x06000000;
ath79_eth0_data.duplex = DUPLEX_FULL;
ath79_register_eth(0);
如果我将 th79_eth0_pll_data.pll_1000 修改为 0x46000000
(设置1805002c GIGE_QUAD位),然后它可以ping但仍然有3%-5%甚至更多的ping损失。奇怪!我真的很想知道 ag71xx 相关代码有什么问题吗?部分引导日志是:
Starting kernel ...
......
......
[ 0.650000] libphy: ag71xx_mdio: probed
[ 0.650000] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:RGMII
[ 1.470000] ag71xx ag71xx.0 eth0: connected to PHY at ag71xx-mdio.0:05 [uid=004dd072, driver=Generic PHY]
root@OpenWrt:/# ping 192.168.1.99
PING 192.168.1.99 (192.168.1.99): 56 data bytes
C
--- 192.168.1.99 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss
root@OpenWrt:/#