It looks as though one should be able to connect the SGMII interface of the P2040 directly up to a gigabit Ethernet SFP fiber module. Has anyone noted any issues making such a connection?
I'm In a similar situation. I am trying to support an optical or copper Gige SFP connected directly to the SERDES(SGMII) of a P2041. As stated above, it seems to be possible to connect directly to the SERDES but I cannot find a Linux driver that supports this configuration. Does anyone know if there is a driver available?
I guess you need to check the SFP module data sheet whether it support SGMII, check the input and output electrical characteristics whether they're compatible to P2040 SerDes interface. P2040 SGMII is fully compatible with SGMII specification.
I am facing perhaps similar problem with P3041 when interfacing with SFP module. Typically for SFP besides Serdes signals there is no MDIO but I2C instead.
I have modified u-boot to use i2c instead of the MAC MDIO (inside fsl_mdio.c) but so far could not get link up.
Any hint?
Make sure you check out the AN3869 application note for SGMII register settings for auto-negotiation. We were able to get this to work with fiber SFP modules but there is still some issue that the SerDes does not support the link timer function but in our case that did not matter. For copper SFP modules we had to use the type that had a SGMII interface to get the link up.
I'm looking to do basically the same thing: connect a copper 10/100/1000Base-T SPF to SGMII (on a P5020).
I guess folks have had to tweak the MDIO support (in U-Boot (and OS/Linux too?)) to use I2C to the PHY instead of MDIO.
Anyone willing to share a solution?
Guess I'll still need to get to the TBI through MDIO.
Any details would be greatly appreciated.
Is there a register or descriptor in the dTSEC frame manager (or other) that will indicate when a link is established and at what speed while using the SGMII SerDes?
See Status Register SR[Link Status], in Table 3-89 DPAARM.pdf.