daisy.skye 2022-08-04 14:00 采纳率: 0%
浏览 103

linux 无法与phy 进行通信 ,ifconfig eth0 up 为10/half 但是无法ping

linux 无法与phy 进行通信

使用的是rgmii,没有接mdio(因为cpu 和 phy 的mdc都是输出脚)两边配置的都是1000的速率
在linux 上使用ifconfig eth0 up 会有反应,但是ping 又没有反应,RX 包接收为0
显示如下

img

  • 写回答

2条回答 默认 最新

  • qllaoda 2022-08-04 14:21
    关注

    如果没有接mdio,网卡驱动这边是没法设置和获取网口连接状态的,10/half应该只是个默认值,而不是实际读取到的。驱动获取到phy的连接状态后,还需要去设置RMII的工作模式,如果PHY连接在1000M模式,但是RGMII设置成了10M模式,当然也是没法正常收发的。如果你能确定一定是连接在1000M的,你可以在驱动里获取连接状态的地方,把状态写死为1000M。
    另外,还需要看PHY是不是带上电自动开启自协商功能,有些PHY需要通过MDIO下命令后才会开启自协商

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 8月4日