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.

[参考译文] DP83822I:CPSW RMII 连接到 DP83822、但无法 ping 到 PC

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1253615/dp83822i-cpsw-rmii-connects-to-dp83822-but-cannot-ping-to-pc

器件型号:DP83822I

您好、 PHY 团队 专家、

客户正在使用  RMII 接口(MCU_CPSW0) 连接外部 TI PHY (DP83822) 。 链路已建立、但无法 ping 通 PC。

我们在下述主题中与我们的 SOC 专家一起提供了详细信息和跟踪信息。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1253323/tda4vh-q1-mcu_cpsw0-rmii-interfaces-connect-to-dp83822-but-cannot-ping-to-pc

同时、我们可能需要您的帮助、以检查正在使用的内部延迟值和设置的属性是否正确、并能在100Mbps 全双工链路中使用。

+      MCU_phy2:以太网-phy@2{

+              reg =<2>;

+ rx-internal-delay-ps       =<1>;

+       tx-internal-delay-ps =<1>;

+      };

+};

此致、

凯文

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

    您好、PHY 团队专家、

    这个 RMII PHY DP83822处于主模式、并且我们已经使用示波器来检查时钟频率是否为50MHz。

    我们已在 DP83822中将 Phy 寄存器值从地址0x0转储到0x1f、如下所示。 您能提供一些相关建议吗? 谢谢!

    root@j784s4-evm:~/mcu_cpsw2g#./mdio_reg_dump.sh  
    页面:0寄存器:0 val:0x3100
    页面:0寄存器:1 val:0x786d
    页面:0寄存器:2 val:0x2000
    页:0寄存器:3 val:0xa240
    页:0 reg:4 val:0x05e1
    页面:0 reg:5 val:0xcde1
    页:0 reg:6 val:0x000f
    页面:0 reg:7 val:0x2001
    页面:0寄存器:8 val:0x4006
    页:0 reg:9 val:0x0000
    页面:0 reg:10 val:0x0100
    页面:0寄存器:11 val:0x1000
    页:0寄存器:13 val:0x401f
    页面:0寄存器:14 val:0x1000
    页:0寄存器:15 val:0x0000
    页:0寄存器:16 val:0x0615
    页:0寄存器:17 val:0x0108
    页:0 reg:18 val:0x6400
    页:0 reg:19 val:0x2800
    页:0 reg:20 val:0x0000
    页:0 reg:21 val:0x0000
    页面:0 reg:22 val:0x0100
    页:0寄存器:23 val:0x0065
    页面:0寄存器:24 val:0x0400
    页:0 reg:25 val:0xbc22
    页:0寄存器:26 val:0x0000
    页:0寄存器:27 val:0x007d
    页面:0 reg:28 val:0x05ee
    页:0寄存器:30 val:0x0102
    页:0 reg:31 val:0x0000

    此致、

    凯文

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

    尊敬的 Kevin:

    请允许我复查您的意见并联系您。

    此致、
    拉胡尔

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

    尊敬的 Rahul:

    谢谢! 客户还提供了以下 DP83822检查清单。

    e2e.ti.com/.../DP83822_5F00_Schematic_5F00_Design_5F00_Review_5F00_Checklist_5F00_Customer.xlsb

    此致、

    凯文

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

    感谢您分享 Kevin 的检查清单。

    此致、
    拉胡尔

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

    尊敬的 Kevin:

    您是否可以共享467h、468h 的寄存器值? 它们位于扩展寄存器空间中、请使用数据表中所述的 MMD 寄存器/读取写入序列。

    同时读取寄存器17h、0x0108我注意到位5为0 (MII 运行模式)。

    您能否确保 PHY 处于 RMII 模式?

    同时、我们可能需要您的帮助、以检查正在使用的内部延迟值和设置的属性是否正确、并能在100Mbps 全双工链路中使用。

    +      MCU_phy2:以太网-phy@2{

    +              reg =<2>;

    + rx-internal-delay-ps       =<1>;

    +       tx-internal-delay-ps =<1>;

    +      };

    +};

    [/报价]

    这用于调整 RGMII 中的延迟而不是 RMII 中的延迟、在此设备树实现中写入哪些寄存器来调整延迟?

    此致、
    拉胡尔

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

    尊敬的 Rahul:

    感谢您的答复。

    我们提供的寄存器的索引是基于抽取主义。 因此、对于0x17、它应该是寄存器索引23、其值为0x0065。

    我们将按照您的建议提供数据。

    我是否知道在 RMII 中是否有任何用于调整延迟的参考?

    此致、

    凯文

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

    尊敬的 Rahul:

    我们今天在内部有一个在线调试会话、有3项发现可能需要您的专业知识来确认。 谢谢!

    1:尝试对 PC 和某些 Phy 寄存器读数执行 ping 操作后、我们发现0x0010中的位11和位6变为1。 我不确定这是否表示有任何问题?

    2:客户正在配置 RMII 主信号、因此使用下面的 MAC 接口配置010 (25MHz 参考时钟)。 它们也在使用广播模式。 那么、我可以知道 RMII 主信令是否可以在广播模式下工作吗?

    3: 当前如果将复位从 SoC 连接到 PHY、50MHz REF_CLK 输出错误、现在我们仅使用加电 RC 复位、从 SoC 到 PHY 断开复位、这意味着 PHY 没有热复位。 我可以知道、在不进行热复位的情况下 PHY 中是否会出现任何问题吗?

    4:我们正在尝试读取467h、468h 的寄存器值、但似乎无法像我们对0x0-0x1f 所做的那样获得这些值、您能否提供读取 467h、468h 寄存器值的方法?

    谢谢。

    凯文

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

    尊敬的 Kevin:

    1:尝试 ping PC 并读取某些 phy 寄存器后、我们发现0x0010中的位11和位6变为1。 我不确定这是否表示有任何问题?

    每当发生错误载波事件时、寄存器0x10中的错误载波检测锁存位就会设置为1、这基本上意味着存在数据包错误。
    基页的远程故障位用于向链路伙伴传输链路故障和错误信息

    2:客户正在配置 RMII 主模式信令、因此使用下面的 MAC 接口配置010 (25 MHz 参考时钟)。 它们也在使用广播模式。 那么、我可以知道 RMII 主信令是否可以在广播模式下工作吗?

    是的、RMII 主器件应该能够广播所有所需的模式。

    3: 当前如果将复位从 SoC 连接到 PHY、50MHz REF_CLK 输出不正确、现在我们只使用加电 RC 复位、断开从 SoC 到 PHY 的复位、这意味着 PHY 没有热复位。 我可以知道在没有热复位的情况下 PHY 中是否会出现任何问题吗?

    有趣的是、连接到 SoC 的 PHY 的复位如何影响50MHz REF_CLK?

    无需对 PHY 进行复位、如果 SoC 被关闭或处于不同的模式、则将始终提供50MHz 参考时钟。
    RESET 主要用于上电序列期间、还可在提供稳定的 XI 输入之前将 PHY 保持在复位状态。

    4:我们试图读取467h、468h 的寄存器值、但似乎无法像我们对0x0-0x1f 所做的那样获得这些值、您能提供读取 467h、468h 寄存器值的方法吗?

    以下是访问寄存器467h 的一个示例:


    1.将值0x001F 写入寄存器0x000D。

    2.将值0x0467写入寄存器0x000E。   

    3.将值0x401F 写入寄存器0x000D。

    4. 读取 寄存器0x000E 的值

    -------------------------------------------------------

    在执行 Ping 测试时,客户是否可以使用 Wireshark 之类的网络分析工具,并验证是否有任何数据包从 PHY 传输?

    客户是否还能够使用示波器进行探测并验证 RMII 线路上是否发生任何通信?

    此致、
    拉胡尔

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

    尊敬的 Rahul:

    感谢您提供信息、我们发现此问题与 SOC 软件配置有关、因此我们现在可以解决此问题、谢谢!

    此致、

    凯文