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:更改 LED 设置时 PHY 挂起

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/951386/dp83822i-phy-hung-up-when-changing-led-setting

器件型号:DP83822I

大家好、

我在 DP83822中的客户设计,PHY 的功能正常(链路正常,可以传输数据包)。 但是,当客户尝试修改 LED_1的设置时,PHY 将挂起。

当客户将 reg0x0460设置为0x0800时、LED_1处于开启状态、大约4~5秒后、LED_0、LED_1关闭、PHY 关闭。

当客户将 reg0x0460设置为0x0151时、LED_1会闪烁、大约4~5秒后、两个 LED 都会关闭、PHY 会关闭。

如果不设置 Reg0x0460,PHY 可以正常工作,我不知道为什么更改 reg0x0460会影响 PHY 的功能。 此外、它不会在0x0460置1后立即关闭。

我要求客户按以下方式读取寄存器设置并向我们提供 SCH。 我正在研究这个问题、如果您有任何建议或我们可以尝试的实验、请告诉我。

 

RD_phy_reg_0x0 = 0x3100

RD_phy_reg_0x1 = 0x786d

RD_phy_reg_0x2 = 0x2000

RD_phy_reg_0x3 = 0xa240

RD_phy_reg_0x4 = 0x1e1

RD_phy_reg_0x5 = 0xc1e1

RD_phy_reg_0x6 = 0xF           

RD_phy_reg_0x7 = 0x2001

RD_phy_reg_0x8 = 0x4806

RD_phy_reg_0x9 = 0x0

RD_phy_reg_0xA = 0x100

RD_phy_reg_0xb = 0x1000

RD_phy_reg_0xc = 0x0

RD_phy_reg_0xd = 0x401f

RD_phy_reg_0xe = 0x1          

RD_phy_reg_0xF = 0x0

RD_phy_reg_0x10 = 0x4215       

RD_phy_reg_0x11 = 0x108

RD_phy_reg_0x12 = 0x7400          

RD_phy_reg_0x13 = 0x2800          

RD_phy_reg_0x14 = 0x0

RD_phy_reg_0x15 = 0x0

RD_phy_reg_0x16 = 0x100

RD_phy_reg_0x17 = 0x65         

RD_phy_reg_0x18 = 0x400

RD_phy_reg_0x19 = 0x8c21

RD_phy_reg_0x1a = 0x0

RD_phy_reg_0x1b = 0x7d

RD_phy_reg_0x1c = 0x5ee

RD_phy_reg_0x1d = 0x0

RD_phy_reg_0x1E = 0x102

RD_phy_reg_0x1f = 0x0

 

RD_phy_reg_0460 = 0x151

RD_phy_reg_0462 = 0x1

 

非常感谢。  

陈文森

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

    尊敬的 Vincent:

    只需确定:

    1.由于这些寄存器地址大于0x1F,是客户使用以下过程来编程和读取这些寄存器:

    编写过程:

    写入 REG<000d>= 0x001F
    写入 REG<000E>=


    写入 REG<000d>= 0x401F
    写入 REG<000E>=

    读取过程:

    写入 REG<000d>= 0x001F
    写入 REG<000E>=


    写入 REG<000d>= 0x401F
    阅读 REG<000E>

    2.在问题情况下、您是否看到 RX_D3上的50MHz 时钟消失?

    --

    此致、

    Vikram

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

    您好、Vikram、

    更正一些信息、客户在设置0x0462而不是0x0460时遇到挂起问题、我们找到了根本原因。

    客户的设置是 RMII 主模式、因此在自举检测期间、reg0x0462将设置为0x0300。 将0x0001设置为 reg0x0462后、50MHz 参考时钟将关闭、从而导致 DP83822挂起。

    将可配置 LED_1功能的设置更改为0x3001、而不会出现挂起问题。

    非常感谢。

    陈文森