SFP ethernet?

Hi, this is my first experience with SFP so sorry for what are probably very basic questions.

I have a 10Gtek 1000Base-T SFP module and am trying to use another RJ45 port. UEFI shell does not detect it. Is that expected or does that mean the module is incompatible?

When I use restool in the OS, the dpni interfaces are created and they show up in ‘ip link’ etc. However the OS never detects a link when a cable is plugged in (the other end of the connection does though, oddly).

I also do not understand where SERDES fits into this. Do I need to rebuild the firmware with a different SERDES configuration or does that even matter here? So many questions!

Currently the SFP+ ports can all work in 10Gbps modes, or 1Gbps more with the default being 10Gbps. This needs to be configured at build time for the firmware. The edk2 firmware also does not enumerate the SFP+ ports as we expect most firmware bootstrapping to happen over the on-board rj45 port.

Thanks, what SERDES value would I need for 1Gbps?

Anyone? Bueller?

It is Serdes protocol 4. All of this can be looked up in NXP’s freely available LX2160a reference manual.

I’m sure this stuff is obvious to you and to many others here, but it is not at all obvious to me. Based on what I could gather from the documentation and firmware build scripts, it seems like you’re just supposed to set SERDES=4_5_2 during the build to get 1.25Gbps to work. But my board won’t boot when I do that – rapidly oscillating fan and no console output. This is with the latest edk2 source.

So is this a) a bug, b) me being a doofus, or c) just plain not supported?

This configuration is only supported with the u-boot BSP builds. edk2 only supports the default 4x10Gbps serdes configurations.