工具/软件:Linux
你(们)好
在具有 66AK2E05 SoC 的定制板上、从端口0 (eth0)上只有一个 MAC 至 PHY 接口。 在我们的库仑板中、SGMII 参考时钟为125MHz。 我们在板上使用 DP83867IS phy。
根据电路板配置、我们更改了 DTS 文件以删除用于评估板的第二个 MAC 至 PHY 接口。 在 phy 端、与 Linux 驱动程序一样、没有与 SGMII 模式(对于 DP83867)相关的配置、因此我只移植了 u-boot phy 驱动程序的设置。
启动时、Eth0接口被识别但无法正常工作(通过 ping 无法访问主机)。
我调试了更多内容、并将在 SOC 和我所访问的 SOC 上发送的数据包外转。 我可以看到、我们能够成功传输数据包、另一方正在重新接收这些数据包并回复、但 SOC 未接收这些数据包。
root@k2e-EVM:~# ifconfig
eth0 Link encap:ethernet HWaddr B4:99:4C:12:38:08
inet6 addr:fe80::b699:4cff:FE12:3808%763860/64范围:链接
运行多播 MTU:1500公制:1的上广播
RX 数据包:0错误:0丢弃:0超限:0帧:0
TX 数据包:31错误:0丢弃:0超限:0载波:0
冲突:0 txqueuelen:1000
RX 字节:0 (0.0 B) TX 字节:4688 (4.5 KiB)
root@k2e-evm:~# ifconfig eth0 192.168.0.10 netmask 255.255.255.0
[124.187857] net eth0:添加地址01:00:5e:00:fc、类型3
root@k2e-evm:~# route 添加了默认 GW 192.168.0.1
然后我 Ping 了 SOC 本身
root@k2e-EVM:~# ping 192.168.0.10
ping 192.168.0.10 (192.168.0.10):56个数据字节
从192.168.0.10开始64字节:序列=0 TTL =64时间=0.094ms
从192.168.0.10开始64字节:SEQ=1 TTL=64 Time=0.052ms
从192.168.0.10开始64字节:SEQ=2 TTL=64 Time=0.052ms
^C
--192.168.0.10 ping 统计信息--
发送3个数据包、接收3个数据包、0%数据包丢失
成功了。
但是、当我厌倦了对网关执行 Ping 操作时、它不是响应
root@k2e-EVM:~# ping 192.168.0.1
ping 192.168.0.1 (192.168.0.1):56个数据字节
^C
--192.168.0.1 ping 统计信息--
发送5个数据包、接收0个数据包、100%数据包丢失
谢谢
王子