TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320C6678: 6678网口1测试正常,但是网口0却初始化过不去。

Part Number:TMS320C6678

测试环境:phy芯片是88E1111,dsp的SGMII 0和1都 与phy链接,时钟250MHz。

软件上,serdes的时钟配置为0x00000051;这个也没问题。

结果:网口 0 初始化会卡在CSL_SGMII_setAdvAbility (macPortNum, &sgmiiCfg);函数中的最后一步,一直不往下运行。 网口 1 能顺利初始化通过。

if (macPortNum == 1) {

        /* Hold the port in soft reset and set up

         * the SGMII control register:

         *      (1) Disable Master Mode

         *      (2) Enable Auto-negotiation

         */

        CSL_SGMII_startRxTxSoftReset (macPortNum);

        CSL_SGMII_disableMasterMode (macPortNum);

        CSL_SGMII_enableAutoNegotiation (macPortNum);

        CSL_SGMII_endRxTxSoftReset (macPortNum);

 

        /* Setup the Advertised Ability register for this port:

         *      (1) Enable Full duplex mode

         *      (2) Enable Auto Negotiation

         *      (3) Enable the Link

         */

        sgmiiCfg.linkSpeed      =   CSL_SGMII_1000_MBPS;

        sgmiiCfg.duplexMode     =   CSL_SGMII_FULL_DUPLEX;

        CSL_SGMII_setAdvAbility (macPortNum, &sgmiiCfg);

 

        do

        {

            CSL_SGMII_getStatus(macPortNum, &sgmiiStatus);

        } while (sgmiiStatus.bIsLinkUp != 1);

 

        /* Wait for SGMII Autonegotiation to complete without error */

        do

        {

            CSL_SGMII_getStatus(macPortNum, &sgmiiStatus);

            if (sgmiiStatus.bIsAutoNegError != 0)

                return; /* This is an error condition */

        } while (sgmiiStatus.bIsAutoNegComplete != 1);

    }

网口0和网口1的区别就是,网口1是集成在板卡内的,网口0是测试小板上的。

代码上也改动了,就只需要这里 1 改为 0 。

奇怪的是两个网口用的是同一个时钟,为啥网口1 可以初始化过去,网口 0 却卡在这里。

Shine:

用的是NDK吧?用EMAC0的话,需要做些修改。请参考下面的FAQ。Q Where and how to enable the EMAC0 on C6678 EVM's AMC connector?https://e2e.ti.com/support/processors-group/processors/f/processors-forum/418234/faq-on-keystone-ndk-network-development-kit-and-pa-packet-accelerator

,

wapdasta:

我看了一下,软件改动也没错。网口0依然不通。而且现在网口 0 初始化不过。是卡在底层SGMII 读状态寄存器那里,一直检测不到link。 还没到NDK上层应用。

网口 1 是正常的。

现在有两个问题

1,网口 0 是没有接MDIO接口的,这样会影响网口初始化不通过吗?

2,网口 0 还有个不同点是,SGMII RX TX查分线是经过调试接口出去 再到测试小板 的phy芯片 上的,这样长的距离会不会影响 DSP获取 PHY 芯片的连接状态。

,

Shine:

请问能做交叉实验吗?测试小板是否能网口1通信?

,

wapdasta:

不行的,硬件设计已经定型了,测试小板就是网口0,板卡内的是网口1.

,

Shine:

请看一下下面网口的布线要求。6 SGMII Interfacehttps://www.ti.com/lit/an/sprabc1/sprabc1.pdf

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6678: 6678网口1测试正常,但是网口0却初始化过不去。
分享到: 更多 (0)