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.

[参考译文] AM2432:am2432的网络故障、具有 phy dp83822

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1428362/am2432-network-failure-for-am2432-with-phy-dp83822

器件型号:AM2432
主题中讨论的其他器件: SysConfigDP83822H

工具与软件:

您好、TI

我们将 am2432与外部 Phy dp83822搭配使用、当我们给系统加电时、有时网络出现故障。  

似乎帧的内容发生了变化、有时根本没有帧。 但本地网络连接已建立链路、拔下并重新插入互联网电缆没有任何意义。

我们根据"mcu_plus_sdk_am243x_09_02_01_05\examples\networking\lwip\enet_lwip_cpsw"演示开发我们的软件、如何调试此问题、我们不知道问题是在 cpsw 或外部 phy 中。  

我们需要您的帮助。 谢谢。

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

    你(们)好

    我会在这里添加有关此问题的更多信息。

    问题描述:

    在我们的应用中、am2432在网络启动后发送 UDP 帧。 但有时发送出去的帧会被交换或根本不会发送出去的帧。

    SDK 版本:

    MCU_PLUS_sdk_am243x_09_02_01_05

    硬件版本:

    AM2432BSDGHIALXR

    测试步骤:

    给电路板上电、然后检查是否发送了正确的帧。  

    发行率:

    有时、问题发生在少于100次的测试中。 有时进行超过700次测试。

    在其他板上重现:

    是的、我们在不同的板上重现了此问题。

    分析前:

    我们在重新生成问题时读取了一些 cpsw 寄存器。

    0x0803a044始终为0

    0x0803a064寄存器值更改 0x112f6f2c -> 0x11856fb8 -> 0x11b75d58 -> 0x11dbf3ae

    0x0803a068始终为0

    0x0803a06c 寄存器值改变了 0x613f -> 0x61e4 -> 0x6243 -> 0x629a -> 0x62e3  

    0x0803a070始终为0xc

    0x0803a074始终为0x9

    0x0803a078始终为0

    0x0803a07c 寄存器值改变 0x9cd18 -> 0x9d7bf -> 0x9de5b -> 0x9e784 -> 0x9eee0

    表明正在发送帧?  

    谢谢。 期待您的回复。

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

    尊敬的 

    感谢您的提问。

    您可以参考 SDK 10.0的以下示例、检查 MAC 环回是否正常工作?

    AM243x MCU+ SDK:Enet CPSW 环回示例(TI.com)

    希望您参考了有关外部 PHY 管理的文档

    AM64x MCU+ SDK:以太网 PHY 集成指南

    AM64x MCU+ SDK:Enet 迁移指南

    您是否能够连接/控制 PHY?

    您能否共享 UART 控制台日志?

    此致

    Ashwani

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

    你好、Ashwani

    我们还测试了 phy 回送演示。

    =============================
     Enet Loopback: Iteration 1 
    =============================
    CPSW_3G Test
    Enabling clocks!
    EnetAppUtils_reduceCoreMacAllocation: Reduced Mac Address Allocation for CoreId:1 From 4 To 1 
    Mdio_open: MDIO Manual_Mode enabled
    
    Open MAC port 2
    EnetPhy_bindDriver: PHY 1: OUI:080028 Model:24 Ver:00 <-> 'generic' : OK
    
    PHY 1 is alive
    EnetMod_ioctl: cpsw3G.macport1: Module is not open
    
    Cpsw_registerIoctlHandler: Failed to register IOCTL handler: -1, 1000502, 700ABA31
    
    EnetPer_ioctl: cpsw3g: Failed to do IOCTL cmd 0x01000110: -1
    
    Enet_ioctl: cpsw3g: IOCTL 0x01000110 failed: -1
    
    Failed to set dscp Priority map for Port 1 - -1 
    initQs() txFreePktInfoQ initialized with 16 pkts
    Cpsw_handleLinkUp: Port 2: Link up: 100-Mbps Full-Duplex
    
    Assertion @ Line: 563 in ../loopback_test.c: EnetLpbk_verifyRxFrame(pktInfo, rxPktCnt) == true : failed !!!
    

    rxPktCnt 在每个测试循环中以589停止。

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

    尊敬的 

    感谢您的观看。

    从 PHY 环回日志..看起来接收到的帧与发送的帧不相似。 您能检查并确认这一点吗?

    >>断言@行:./loopback_test.c 中的563:EnetLpbk_verifyRxFrame (pktInfo、rxPktCnt)== true:失败!!!

    我也会深入检查日志并返回给你。

    下个星期,我休假了。 因此、预计在第一周的演讲结束前会有回应。

    此致

    Ashwani

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

    你好、Ashwani

    很抱歉这么晚才回复。

    我在演示中添加了一些打印内容。

    static bool EnetLpbk_verifyRxFrame(EnetDma_Pkt *pktInfo, uint8_t rxCnt)
    {
        uint8_t *rxPayload;
        EthFrame *rxframe;
        uint8_t verifyRxpkt = 0xA5+rxCnt;
        bool retval = false;
        uint32_t i,j;
        uint32_t segmentLen, headerLen;
        bool incorrectPayload = false;
    
        rxframe = (EthFrame *)pktInfo->sgList.list[0U].bufPtr;
        rxPayload = rxframe->payload;
    
        if (pktInfo->sgList.numScatterSegments == 1)
        {
            for (i = 0; i < ENETLPBK_TEST_PKT_LEN; i++)
            {
                if((rxPayload[i] != verifyRxpkt))
                {
                    EnetAppUtils_print("rxPayload is 0x%x, verifyRxpkt is %x\r\n", rxPayload[i], verifyRxpkt);
                    retval = false;
                    break;
                }
                retval = true;
            }
        }

    rxPayload 为0x43、verifyRxpkt 为41
    断言@行:../loopback_test.c 中的565:EnetLpbk_verifyRxFrame (pktInfo、rxPktCnt)== true:失败!!!

    数据包有效载荷为0x43、是某种无序错误吗?

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

    你好、Ashwani

    我添加了一些打印件并获得了下面的日志。

    =============================
     Enet Loopback: Iteration 1 
    =============================
    CPSW_3G Test
    Enabling clocks!
    EnetAppUtils_reduceCoreMacAllocation: Reduced Mac Address Allocation for CoreId:1 From 4 To 1 
    Mdio_open: MDIO Manual_Mode enabled
    
    Open MAC port 2
    EnetPhy_bindDriver: PHY 1: OUI:080028 Model:24 Ver:00 <-> 'generic' : OK
    
    PHY 1 is alive
    EnetMod_ioctl: cpsw3G.macport1: Module is not open
    
    Cpsw_registerIoctlHandler: Failed to register IOCTL handler: -1, 1000502, 700ABA61
    
    EnetPer_ioctl: cpsw3g: Failed to do IOCTL cmd 0x01000110: -1
    
    Enet_ioctl: cpsw3g: IOCTL 0x01000110 failed: -1
    
    Failed to set dscp Priority map for Port 1 - -1 
    initQs() txFreePktInfoQ initialized with 16 pkts
    Cpsw_handleLinkUp: Port 2: Link up: 100-Mbps Full-Duplex
    
    tx 0xa6
    tx 0xa7
    tx 0xa8
    tx 0xa9
    tx 0xaa
    tx 0xab
    tx 0xac
    tx 0xad
    tx 0xae
    tx 0xaf
    tx 0xb0
    tx 0xb1
    tx 0xb2
    tx 0xb3
    tx 0xb4
    tx 0xb5
    rx 0xa6
    rx 0xa7
    rx 0xab
    rxPayload is 0xab, verifyRxpkt is a8
    Assertion @ Line: 566 in ../loopback_test.c: EnetLpbk_verifyRxFrame(pktInfo, rxPktCnt) == true : failed !!!
    

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

    感谢  的日志、

    我们将在下周前与您联系。

    此致

    Ashwani

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

    你好、Ashwani

    感谢您的帮助。

    我们在我们的生产软件中进行了一些测试。 我们可以通过 UART 读取或写入 phy 或 cpsw 寄存器。

    以太网帧内容完全错误、甚至无法被 Wireshark 识别。 有时 Mac 地址错误。

    我们发现、当故障报告和重置 phy 时、错误仍然存在。 但是、在我们将 PHY 寄存器0x42设置为值0x11之后、错误消失了。

     

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

    您好、Ccheng

    PHY 环回和 MAC 环回正常工作、但某些帧内容错误。

    假设这是带有 AM243x + DP83822的定制电路板。

    您是否通过 TI-HW 团队审查了原理图?

    有关软件相关问题:

    是否在 SysConfig 中断开了另一个未使用的端口(CPSW-Port-1)?

    这些 IOCTL 错误来自哪里?

    此致

    Ashwani

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

    你好、Ashwani

    我们的原理图未经过审阅、因为我们未向 TI 提供整个原理图、而是根据评估板来设计硬件。

    对于与软件相关的问题、可以是、端口1未连接到83822、而是通过 MAC2MAC 连接到 FPGA。 我们将针对测试用例测试端口2。

    除了我们之前的测试、无论我们 在软件值0x11-0x19中设置0x42 TX_CLK 相移寄存器、我们都可以始终重现错误、但当发生错误时、我们将寄存器更改为另一个与初始化中设置的值不同的值、错误会消失。 我认为该错误很可能是由该寄存器引起的。 但是,我们不知道如何解决这个问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有关软件相关问题、是的、端口1未连接到83822、而是通过 MAC2MAC 连接到 FPGA。 我们只针对测试用例测试端口2。[/报价]

    这对我来说是一个新闻

    也就是说、您的定制板 CPSW-PORT-1通过 MAC2MAC 连接到 FPGA?

    CPSW-PORT-2是否连接到 DP83822?

    DP83822是否配置为 RGMI 还是 RMII 模式?

    CPSW-端口1模式?

    CPSW-PORT-2模式?

    此致

    Ashwani

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

    你好、Ashwani

    有。 对于定制板、 CPSW-PORT-1使用 MAC2MAC 连接到 FPGA、CPSW-PORT-2 连接到 DP83822。  CPSW-Port-1配置为 RGMII 1000Mbps 模式、 CPSW-Port-2配置为 RGMII 100Mbps 模式。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的。 对于定制板、 CPSW-PORT-1使用 MAC2MAC 连接到 FPGA、CPSW-PORT-2 连接到 DP83822。  CPSW-端口1配置为 RGMII 1000Mbps 模式、 CPSW-端口2配置为 RGMII 100Mbps 模式。[/报价]

    您好、Cheng Guo

       那么、哪个连接有错误、即  CPSW-PORT-1或 CPSW-PORT-2 ?

    此致

      Semon

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

    您好、Semon

    CPSW-PORT-2连接到 dp83822芯片、我们无法在以太网上获得正确的帧、根据前面的测试、我们认为 cpsw-port-2和 dp83822之间的 RGMII 连接出错。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们的原理图未经过审阅、因为我们未向 TI 提供整个原理图、但根据评估板设计了硬件。

    这样就不能提供完整的原理图了。 但至少 MAC 至 PHY RGMII 连接、因为您的以下观察结果 似乎有效。
    我也在尝试就此问题与 PHY 团队的专家联系。

    我们认为 cpsw-port-2与 dp83822
    之间的 RGMII 连接出错

    此致

    Ashwani

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

    你好、Ashwani

    在这里、我附加原理图的连接部分、请检查。

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

    尊敬的 Ashwani。

    本地客户 Robosense 团队也会向 PHY 团队报告此问题、其中包含 E2E 票证。

    (+) DP83822H:建立链路、但发送和接收信息错误。 -接口-内部论坛-接口-内部- TI E2E 支持论坛

    也请帮助与 PHY 专家联系。

    非常感谢!

    Yong

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    (+) DP83822H:链接接通但发送和接收信息错误。 -接口-内部论坛-接口-内部- TI E2E 支持论坛[/QUOT]

    此线程已仅分配给 PHY 团队。

    此致

    Ashwani

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

    你好、你是中国人吗? 我最近一直在调试 AM263x 连接 dq83822、我已经完成了83869调试、83822一直有问题、也许可以通过电话或者微信进行沟通

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,您是中国人吗? 我最近一直在调试 AM263x 连接 dq83822、我已经完成了83869调试、83822一直有问题、也许我们可以通过电话或微信进行沟通

    你好 Yuan

       是的、我是 TI 在中国的 FAE、可以给我写信讨论本案例:
        semon_zhang@ti.com

    此致

      Semon

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

    你好、你是中国人吗? 我最近一直在调试 AM263x 连接 dq83822、我已经完成了83869调试、83822一直有问题、也许我们可以通过电话或者微信来沟通。

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

    尊敬的 Ashwani。

    客户提供的更新。

    客户发现需要在 PHY 端将 PHY 端口设置为 RGMII 模式。

    客户使用此设置进行了第一次测试、TXCLK 上的信号正常。

    客户将进行更多测试以再次确认这一点。 稍后会更新状态。

    将此 TT 置于"Waiting for customer"状态。

    非常感谢!

    Yong

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

    你好、Ashwani

    在83822的0x17寄存器中启用 RGMII 模式位后。 无法重现此错误。 感谢您的帮助。

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

    你好  

    是的、我是中国人、如何与您联系?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="613289" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1428362/am2432-network-failure-for-am2432-with-phy-dp83822/5514756 #5514756"]在83822的0x17寄存器中启用了 RGMII 模式位之后。 无法重现此错误。 感谢您的帮助。

    感谢您的更新。

    此致
    Ashwani

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

    我的微信是:YCH_CHN

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

    尊敬的 Cheng。

    如果已通过 PHY 中设置的 RGMII 位解决该问题、您能否提供反馈? 如果是、我们可以将其关闭。

    非常感谢!

    Yong

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

    是的、我已经解决了这个问题~

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

    谢谢  Cheng 和 Yong。

    此致

    Ashwani

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

    Yong、您好

    是的、已经解决了。 感谢您的 帮助。