Other Parts Discussed in Thread: CDCM6208
1,用NDK测试
测试环境:phy芯片是88E1111,dsp的SGMII 1 与phy链接,时钟250MHz。
软件上,serdes的时钟配置为0x00000051;这个也没问题。
结果:网口初始化会卡在CSL_SGMII_setAdvAbility (macPortNum, &sgmiiCfg);函数中的最后一步,一直不往下运行。现在测量PHY的输入时钟都有,PHY复位时间也做了延长,都没效果。
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);
}
2,GE测试loopback
SERDES 内部loopback测试。
会打印出;
Disable power domain 2 timeout!
enable power domain 2 timeout
external exception happened. MEXPFLAG[3] = 0X84000000.
Event 122:DMC_CMPA CPU ............................
等一系列log。
这些是什么原因造成的呢?
该怎么解决?



