您好:
最近、我设计了 一个基于6670EVM 的新电路板、 还使用88E1111作为 PHY、串行器/解串器 PLL 为250m、 我使用 SGMII port0而不是 port1来连接到88E1111。问题是当我使用 platform_init 测试网络部件时、我发现 SGMII init 进程无法链接。我修改了 platform_init 中的代码、如下所示:
if (p_flags->phy){
configSerDES();
INIT_SGMII (0);
//Init_SGMII (1);
}
在 congfigSerdes ()中:
CSL_BootCfgUnlockKicker();
CSL_BootCfgSetSGMIIConfigPLL (0x00000051);//对于输入时钟为250MHz
CSL_BootCfgSetSGMIIRxConfig (0、0x00700621);
CSL_BootCfgSetSGMIITxConfig (0、0x000108A1);
当我运行此代码时、我发现它在中 的无限循环中运行
操作
{
CSL_SGMII_getStatus (macPortNum、_sgmiiStatus);
} while (sgmiiStatus.bIsLinkUp != 1);
SGMII_STATUS 寄存 器的值为0x30,、MR_LP_ADV_ANability 寄存器的值为0x4000。
然后我测试了演示 GE、MAC、SGMII 和 SERDES 环回是否成功通过。 我还测量250m SerDes 时钟、发现它还可以。 我还将电路板与 PC 连接、发现88e1111可以与 PC 成功连接和自动协商。
我知道 SGMII 没有连接、但我不知道是什么原因导致连接、您能给我一些指导和建议吗? 谢谢!!!!!!