Hi,
We are developed a c6678 card in which I need to configure the SGMII of the DSP in force mode (No AutoNegotiation) to be connected to a Phy implemented on FPGA (SPARTAN-6) that is configured in force mode (1000_MBPS).
I did the following modifications in the Init_SGMII() function (file -> cpsw_mgmt.c Project -> PA_emac_Example)
void Init_SGMII (UInt32 macPortNum)
{
CSL_SGMII_ADVABILITY sgmiiCfg;
CSL_SGMII_STATUS sgmiiStatus;
/* Reset the port before configuring it */
CSL_SGMII_doSoftReset (macPortNum);
while (CSL_SGMII_getSoftResetStatus (macPortNum) != 0);
CSL_SGMII_disableMasterMode (macPortNum);
sgmiiCfg.linkSpeed = CSL_SGMII_1000_MBPS;
sgmiiCfg.duplexMode = CSL_SGMII_FULL_DUPLEX;
CSL_SGMII_setAdvAbility (macPortNum, &sgmiiCfg);
CSL_SGMII_disableAutoNegotiation (macPortNum);
CSL_SGMII_endRxTxSoftReset (macPortNum);
do
{
CSL_SGMII_getStatus(macPortNum, &sgmiiStatus);
} while (sgmiiStatus.bIsLinkUp != 1);
CycleDelay(2000000);
}
I'm working with macPortNum = 0
I tried to do CSL_SGMII_enableMasterMode (macPortNum); instead CSL_SGMII_disableMasterMode (macPortNum);\
But the link is not going Up. The programm stalls in the while (sgmiiStatus.bIsLinkUp != 1) line.
Some idea why is not working? , something wrong in my code?
Regards,
Enrique.