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.

DM648 NDK ping不通



TI工程师您好!我这边在调试DM648 NDK时遇到问题向您请教一下。

现在使用dm648芯片,使用的ndk版本是ndk_1_92_00_22_eval,用其中的helloworld工程。文档648有两个SGMII口,我们只用了SGMII0,使用的phy芯片是88E1111 –BAB1相连;SGMII1没有用。刚开始测试时会打印cpsw_MDIO_FindingState: Timed Out looking for a Phy!在函数evmdm648init.c103行把use_SMA_on_port1 = FALSE改成use_SMA_on_port1 = TRUE,就不会出现这句话。运行程序后1000M全双工能协商成功,但是ping不通。能否指点一下,谢谢您的时间!

我们采用的原理方案如下:

648的SGMII连接如下:

PHY芯片的连接如下:

 

  • #1. 这个版本有点老,而且还是评估版的,有24小时断网限制,建议下载新版本。

    #2. 你看一下代码里这个端口编号是0,1还是1,2,看样是按1,2这样编号的。

    #3. 能协商成功说明与PHY之间已经通了。

    #4. 试试内环模式,可以确认驱动是否正确

    #5. PHY也有个环回模式,可以确认MAC与PHY之间的连接是否完好。

    #6. 若4,5没有问题那就是外部的问题了,比如PHY与连接器之间,或者网线等有问题。

  • 谢谢回复,参考你的意见在网上下了ndk_1_94_1软件,安装后里面不包含工程,能不能给我发个完整的1.94软件包 谢谢

  • 1、官网下了setupwin32_ndk-1_94_1_1.exe,发现里面没有现成的prj工程,是不是需要自己创建工程?

    2、代码里面端口编号是0、1

    4、在3-Port Gigabit Switch (CPSW) Registers中的CPSW_CONTROL寄存器中的FIFO_LOOPBACK置位,然后在RXSOFOVERRUNS寄存器看统计计数,程序运行后发现RXSOFOVERRUNS寄存器统计了一个包,CCS打印:002.604 EtherRxPacket: Bad Size   这个是不是说明驱动有问题?

     

    谢谢