ZHCADO3 January   2024 DP83TC812R-Q1 , DP83TC812S-Q1

 

  1.   1
  2.   商标
  3. 1前言
  4.   命名惯例
  5. 2相关文档
  6. 3支持资源
  7. 4排查 PHY 应用问题
    1. 4.1  原理图和布局检查清单
    2. 4.2  验证 PHY 是否成功上电
    3. 4.3  外设引脚检查
      1. 4.3.1 探测 RESET_N 引脚
      2. 4.3.2 探测 INH 引脚
      3. 4.3.3 探测 CLKOUT 引脚
      4. 4.3.4 探测串行管理接口(MDC、MDIO)引脚
    4. 4.4  寄存器转储比较
    5. 4.5  验证 Strap 配置
    6. 4.6  检查 MDI 信号
    7. 4.7  链路接通失败常见问题
    8. 4.8  信号质量检查
    9. 4.9  上电时序
    10. 4.10 环回测试
    11. 4.11 调试 MAC 接口
    12. 4.12 验证 Open Alliance PMA 合规性
    13. 4.13 工具和参考
      1. 4.13.1 DP83TC812 寄存器访问
      2. 4.13.2 DP83TC812 USB2MDIO 脚本
      3. 4.13.3 扩展寄存器访问
      4. 4.13.4 Linux 上的软件和驱动程序调试
        1. 4.13.4.1 常见的 Linux 终端输出
  8. 5结语

常见的 Linux 终端输出

使用终端命令“dmesg | grep mdio”,从软件的角度来看,可能会有几条线索显示是什么原因导致 PHY 无法正常工作。

$ dmesg | grep "mdio"

可能的输出之一如下所示:

$ mdio_bus xxx.ethernet-x: MDIO device at address 8 is missing

该消息指示 PHY 未在 MDIO 总线上找到,这可能是由多个问题引起的。一种常见原因是器件树缺失或不正确,但也可能是由于 PHY 无法正常工作或 SMI 连接不良。

一旦可以在 MDIO 总线上检测到 PHY,另一个常见错误消息如下所示:

$ Generic PHY xxx.ethernet-x: attached PHY driver [Generic PHY]

该消息指示相应 PHY 的驱动程序文件未正确加载或根本不存在,并且加载到通用驱动程序中的 Linux 很可能无法与 PHY 配合使用。在这种情况下,请验证驱动程序是否已成功编译并已添加到 Linux,并确保驱动程序与所使用的 PHY 型号相匹配。

最后,可能显示如下消息:

$ am65-cpsw-nuss c000000.ethernet eth3: PHY [c000f00.mdio:05] driver [TI DP83TC812CS2.0] (irq=POLL)

该消息显示 PHY 已加载正确的驱动程序并成功检测到。运行 ifconfig 验证网络接口是否存在。

当 PHY 成功识别为网络适配器时的示例 ifconfig 输出:

root@j7-evm:~# ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500  metric 1
        ether 24:76:25:a2:62:8b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536  metric 1
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 82  bytes 6220 (6.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 82  bytes 6220 (6.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0