Some extra information.
I compared some register of my custom board with the LS1012A-FRWY. I have found some divergencies between them. The first one is about the SCFG register "PFE PCS status register 1" (PFEPCSSR1). On the Freeway, I have a value of 0x000000c0 (big-endian), indicating the status of the link event and the auto-negotiation (section 11.2.25 of LS1012A Reference Manual). My custom board indicates zero for the same register.
Another difference is regarding the MDIO. I changed the MDIOSELCR (section 11.2.33) to use the internally generated MDIO (value zero) in my custom board. My MDIO appears as a Generic PHY:
igor_franco_1-1626893868447.png
Using the command to read the MDIO status register, I have the following for the LS1012A-FRWY, which has a link-up:
igor_franco_4-1626894102794.png
On the other hand, my custom board is as the following image, without a link:
igor_franco_5-1626894177310.png
I have followed the section 28.7.1.1 instructions to set an SGMII 1G but it still doesn't work. Could those registers indicate some configuration problem? How can I be sure that the MDIO and the PFE are properly configured? What can I do to check if I had some hardware or software issue?
Best regards,
Igor