LS1027A using a switch with SGMII

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LS1027A using a switch with SGMII

Jump to solution
2,005 Views
igor_franco
Contributor IV

Hello,

We are using the LS1027AE processor in a custom board with an Ethernet Switch (KSZ9477S, datasheet attached in this post) connected through SGMII1G-S in the Lane C of the SerDes protocol. This Switch will communicate via I2C with the processor during its configuration. According to the LS1028A Reference Manual, in the SerDes chapter, the SGMII1G-S uses the TSN Switch peripheral instead of ENETC. We configured the Switch as a slave I2C and the MDIO PHYs in our DTS (find it attached), which was based on the LS1028A-RDB file. However, we couldn't establish an Ethernet communication (e.g. ping some local IP).
Is there something wrong with our DTS? Is there any documentation showing how to port the Switch in the SerDes protocol?

Best regards,
Igor

0 Kudos
1 Solution
1,918 Views
igor_franco
Contributor IV

I have solved the problem by myself.

For anyone that needs something similar.

The SGMII connection with Switch is considered MAC to MAC, once we don't have a PHY. For this kind of connection, it is not possible to use auto-negotiation. Therefore, the problem was solved just disabling the auto-negotiation on both the processor and the Switch, using a default full-duplex 1Gbps configuration. After this, everything works fine.

P.s.: I need to change the driver because the auto-negotiation register value was hardcoded.

Best regards,

Igor

View solution in original post

0 Kudos
2 Replies
1,919 Views
igor_franco
Contributor IV

I have solved the problem by myself.

For anyone that needs something similar.

The SGMII connection with Switch is considered MAC to MAC, once we don't have a PHY. For this kind of connection, it is not possible to use auto-negotiation. Therefore, the problem was solved just disabling the auto-negotiation on both the processor and the Switch, using a default full-duplex 1Gbps configuration. After this, everything works fine.

P.s.: I need to change the driver because the auto-negotiation register value was hardcoded.

Best regards,

Igor

0 Kudos
1,999 Views
igor_franco
Contributor IV

I have forgotten to say that our U-Boot, RCW, and ATF version are LSDK-20.04-update-290520. 

0 Kudos