This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DP83822H:AM5728:无法为以太网@484000获取 PHY:地址0

Guru**** 1630180 points
Other Parts Discussed in Thread: AM5728, DP83822HF, DP83822IF
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1331911/dp83822h-am5728-could-not-get-phy-for-ethernet-48484000-addr-0

器件型号:DP83822H
主题中讨论的其他器件:AM5728、、 DP83822IF

您好、TI!

我们结合使用定制设计的 AM5728电路板和 MitySOM AM5728 SOM。 我们有带 DP83822的 PRU ICSS 以太网。

在启动时、我收到以下错误。

无法为以太网@48484000获取 PHY:地址0

随附原理图和引导日志。 请检查问题并帮助我们。

谢谢。此

致、 Sandeep Se2e.ti.com/.../putty_5F00_1.log
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sandeep、您好!

    DP83822所需的 PHY 地址是什么? 日志消息显示 addr 0、但原理图显示 PHY 绑定到 PHY 地址0x1 (模式3中的 COL 引脚)。

    此致、

    阿尔瓦罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    我们使用两个 DP 83822进行以太网连接。 所需的 PHY 地址为 phy0和 phy 1。 在上面所示的原理图中、我们移除了 R219以将其添加到 PHY 1。 另一个 DP83822具有 COL 引脚下拉电阻、电阻为2.2k、即 R55 (删除了 R57和 R56)。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sandeep、您好!

    明白了、有两个地址为0x0和0x1的 PHY。  

    在电路板完成启动且内核准备就绪后、您可以尝试以下命令吗?

    dmesg | grep mdio

    这样我们就可以知道驱动程序是否已正确加载。

    此致、

    阿尔瓦罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    起初、我们遇到了 PRU2_MII1_RESET 引脚的问题。 我们更正了 GPIO 配置、现在能够引导 Linux。

    以太网 PHY 问题仍然存在。 prueth pruss2_eth eth1:链路持续发出中断消息。

     [ 661.602356] prueth pruss2_eth eth1:链路中断
    [ 662.642615] prueth pruss2_eth eth1:链路已接通- 100Mbps/满-流控关闭
    [664.722383] prueth pruss2_eth eth1:链路中断
     [ 666.802613] prueth pruss2_eth eth1:链路已接通- 100Mbps/满-流控关闭
    [ 668.882374] prueth pruss2_eth eth1:链路中断

    我得到的"dmesg | grep mdio"命令输出是...

    root@mitysom-am57x:~# dmesg | grep MDIO
    [   1.950382] MDIO_BUS 固定-0:用于用户复位的 GPIO 查找
    [   1.950390] MDIO_BUS 固定-0:使用查找表进行 GPIO 查找
    [   1.950398] MDIO_BUS 固定-0:未找到 GPIO 使用者复位
    [   8.019000] MDIO_BUS 4b2b2400.MDIO:用于用户复位的 GPIO 查找
    [   8.019007] MDIO_BUS 4b2b2400.MDIO:使用器件树进行 GPIO 查找
    [   8.019029] of_get_named_gpio_FLAGS:已解析节点'/ocp/pruss-soc 总线@4b2a6004/pruss@4b280000/MDIO@4b2b2400[0]'的'reset-gpios'属性-状态(0)
    [   8.019104] MDIO_BUS 4b2b2400.MDIO:用于用户复位的 GPIO 查找
    [   8.019108] MDIO_BUS 4b2b2400.MDIO:使用器件树进行 GPIO 查找
    [   8.019127] of_get_named_gpio_fags:已解析节点'/ocp/pruss-soc 总线@4b2a6004/pruss@4b280000/MDIO@4b2b2400[1]'的'reset-gpios'属性-状态(0)
    [   8.019166] MDIO_BUS 4b2b2400.MDIO:用户复位的 GPIO 查找
    [   8.019170] MDIO_BUS 4b2b2400.MDIO:使用器件树进行 GPIO 查找
    [   8.019183] of_get_named_gpio_FLAGS:无法解析节点"/ocp/pruss-soc 总线@4b2A6004/pruss@4b280000/MDIO@4b2b2400[2]的'Reset-GPIOs'属性
    [   8.019194] of_get_named_gpiod_FLAGS:无法解析节点'/ocp/pruss-soc 总线@4b2A6004/pruss@4b280000/MDIO@4b2b2400[2]的'Reset-GPIO'属性
    [   8.019200] MDIO_BUS 4b2b2400.MDIO:使用查找表进行 GPIO 查找
    [   8.019206] MDIO_BUS 4b2b2400.MDIO:未找到 GPIO 使用者复位
    [   8.071786] Davinci_MDIO 4b2b2400.MDIO:DaVinci MDIO 修订版1.6、总线频率1000000
    [   8.079479] libphy:4b2b2400.mDIO:探测
    [   8.086743] of_get_named_gpio_FLAGS:无法解析节点'/ocp/pruss-soc 总线@4b2A6004/pruss@4b280000/MDIO@4b2b2400/以太网-phy@0[0]'的'Reset-GPIOs'属性
    [   8.089476] of_get_named_gpio_FLAGS:无法解析节点'/ocp/pruss-soc 总线@4b2A6004/pruss@4b280000/MDIO@4b2b2400/以太网-phy@1[0]的'REST-GPIOs'属性
    [   8.089576] davinci_mDIO 4b2b2400.mDIO:phy[0]:器件4b2b2400.mDIO:00、驱动程序未知
    [   8.097667] Davinci_MDIO 4b2b2400.MDIO:PHY[1]:器件4b2b2400.MDIO:01、驱动程序未知

    谢谢。此

    致、 桑迪普 S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Sandeep

    [8.089576]   davinci_MDIO 4b2b2400.MDIO:PHY[0]:器件4b2b2400.MDIO:00、驱动程序未知
    [   8.097667] davinci_mDIO 4b2b2400.mDIO:phy[1]:器件4b2b2400.mDIO:01、驱动程序未知

    这两条线就是我要寻找的线。 似乎无法识别驱动程序。 这是软件问题、我们是否知道是否包含了驱动程序文件?

    在其 SDK 中、应位于其 SDK 软件包的以下

    /driver/net/phy  

    此致、

    阿尔瓦罗  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    DP83822驱动程序文件位于/driver/net/phy 中

    我们还将使用与 MitySOm AM572x IDK 配合使用的同一 SDK。 但在我们的设计中、将"PRU2MII1RESETn" GPIO 引脚更改为 GPIO 1_4、并且还修改了 uboot 和内核。 两个 PHY 中出现相同的问题。

    谢谢。此

    致、 桑迪普 S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sandeep、您好!

    在同一个/driver/net/phy 文件夹中、您能否检查是否有 Makefile 和 Kconfig。 这两个文件中都包含 DP83822驱动程序吗?

    此致、

    阿尔瓦罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    问题现已解决。 我们移除了 TDP、TDM、RDP 和 RDM 线路中连接的165欧姆电阻。 现在、ping 可以正常工作。   

    现在我们正面临另一个问题。 我们计划使用 PHY DP83822IRHBR 实现 RJ45和 SFP (光纤通信)。 但在一个论坛中、我看到此 PHY 不支持100 Base FX 通信。 我需要一个能够同时支持铜缆和光纤通信的 PHY IC。 因此、哪个 DP83822系列将同时支持铜缆和光纤通信。 我参考了数据表以及 DP83822 EVM、并没有获得清晰的图片、DP83822IRHBR 正在使用该 EVM。 它具有组装在 EVM 中的光纤和铜缆接口。 请帮助我澄清这一疑问。  

    谢谢。此

    致、 桑迪普 S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sandeep、您好!

    很高兴最初的问题得到解决。 对于 DP83822、器件名称中带有"F"表示支持光纤、例如 DP83822IF 和 DP83822HF。 "H"和"I"表示工作温度、可以在数据表的第5节中找到该信息。  

    DP83822F 可同时支持铜缆和光纤通信、但不能同时支持。 两种应用的 MDI 引脚是相同的、这意味着电路板不能通过单个 DP83822芯片同时具有铜缆和光纤。

    EVM 如上所述运行、它可以同时支持两者、但不能同时支持。 如果要使用光纤、则需要断开连接铜变压器的布线、反之亦然。

    您能否进一步说明客户的要求? 该板有两个 DP8322、其中 eth0可设置为铜缆、eth1可设置为光纤。 这是客户想要的吗? 如果是、则此配置没有问题。

    此致、

    阿尔瓦罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    感谢您的提示支持。 现在、我们将使用 DP83822IRHBR。 现在很明显、它不支持光纤通信(SFP)。 我们要求使用两个以太网 PHY、一次两个 PHY 都用作铜缆 RJ45或 SFP 模块。 我将继续使用 DP83822IFRHBR。  

     当 DP83822处于光纤模式时,是否需要在 Yocto Linux 中进行任何内核或设备树修改?

    谢谢。此

    致、 桑迪普 S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sandeep、您好!

    如果通过 PHY 的硬件自举启用光纤、则无需更改驱动程序。  

    如果要使用 Yocto Linux 驱动程序配置 PHY、则需要将其配置为所需模式、无论是铜缆还是光纤。

    此致、

    阿尔瓦罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvaro:

    感谢您的支持。  我将尝试使用 DP83822IF  

    关于

    桑迪普