* phylink and an unusual PHY/SFP setup @ 2026-05-27 8:19 Michael Walle 2026-05-27 13:35 ` Andrew Lunn 0 siblings, 1 reply; 4+ messages in thread From: Michael Walle @ 2026-05-27 8:19 UTC (permalink / raw) To: Andrew Lunn, Russell King; +Cc: netdev [-- Attachment #1: Type: text/plain, Size: 709 bytes --] Hi, I have a board with a rather unusual network link setup: MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> SFP or even MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> Copper SFP with PHY Does phylink support such a configuration? I suspect adding support for such a configuration isn't straight forward. FWIW, the M88E1112 PHY driver seems to be completely broken in upstream. It looks like it was assumed, that it's like the M88E1111. But that one only has 1 SerDes and one parallel interface. The 1112 has two SerDes interfaces and thus a completely different register map. I'm not sure it ever worked, except maybe by accident for the SGMII-to-Copper case. -michael [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 297 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: phylink and an unusual PHY/SFP setup 2026-05-27 8:19 phylink and an unusual PHY/SFP setup Michael Walle @ 2026-05-27 13:35 ` Andrew Lunn 2026-05-28 9:24 ` Michael Walle 0 siblings, 1 reply; 4+ messages in thread From: Andrew Lunn @ 2026-05-27 13:35 UTC (permalink / raw) To: Michael Walle; +Cc: Russell King, netdev On Wed, May 27, 2026 at 10:19:18AM +0200, Michael Walle wrote: > Hi, > > I have a board with a rather unusual network link setup: > > MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> SFP > > or even > > MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> Copper SFP with PHY Such setups do exist already, but with a different PHY. The Marvel 10G PHY is sometimes placed in the middle like this. And there are other PHYs. Take a look at commit 35d1a5464b476aa98b7b76ce41bb4de748cebfc2 Author: Maxime Chevallier <maxime.chevallier@bootlin.com> Date: Thu Jan 8 09:00:35 2026 +0100 net: phy: marvell10g: Support SFP through phy_port Convert the Marvell10G driver to use the generic SFP handling, through a dedicated .attach_port() handler to populate the port's supported interfaces. As the 88x3310 supports multiple MDI, the .attach_port() logic handles both SFP attach with 10GBaseR support, and support for the "regular" port that usually is a BaseT port. Also, marvell-88x2222.c. Andrew ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: phylink and an unusual PHY/SFP setup 2026-05-27 13:35 ` Andrew Lunn @ 2026-05-28 9:24 ` Michael Walle 2026-05-28 13:56 ` Andrew Lunn 0 siblings, 1 reply; 4+ messages in thread From: Michael Walle @ 2026-05-28 9:24 UTC (permalink / raw) To: Andrew Lunn; +Cc: Russell King, netdev [-- Attachment #1: Type: text/plain, Size: 1977 bytes --] Hi Andrew, On Wed May 27, 2026 at 3:35 PM CEST, Andrew Lunn wrote: > On Wed, May 27, 2026 at 10:19:18AM +0200, Michael Walle wrote: >> Hi, >> >> I have a board with a rather unusual network link setup: >> >> MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> SFP >> >> or even >> >> MAC/PCS (fman) <-SerDes-> PHY (M88E1112) <-SerDes-> Copper SFP with PHY > > Such setups do exist already, but with a different PHY. The Marvel 10G > PHY is sometimes placed in the middle like this. And there are other > PHYs. > > Take a look at > > commit 35d1a5464b476aa98b7b76ce41bb4de748cebfc2 > Author: Maxime Chevallier <maxime.chevallier@bootlin.com> > Date: Thu Jan 8 09:00:35 2026 +0100 > > net: phy: marvell10g: Support SFP through phy_port > > Convert the Marvell10G driver to use the generic SFP handling, through a > dedicated .attach_port() handler to populate the port's supported > interfaces. > > As the 88x3310 supports multiple MDI, the .attach_port() logic handles > both SFP attach with 10GBaseR support, and support for the "regular" > port that usually is a BaseT port. > > Also, marvell-88x2222.c. > > Andrew Thanks for the pointer. It looks like this can be used to support both the Base-T port and the SerDes port of this PHY. But I'm still trying to wrap my head around the SerDes links and it's configuration. Basically, phylink tries to match both ends of the link and will configure the PCS and the PHY accordingly. But in my case, the link between the MAC/PCS and the PHY is always SGMII (at least that's what the Marvell datasheet says). The line side of the PHY is then either Base-T if using the copper port or 1000Base-X, 100Base-FX or SGMII on the fiber port. If I add these modes to the possible_interfaces property, the PCS might be configured wrong, that is, in 1000Base-X mode for example. But it really should only be ever in SGMII mode. -michael [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 297 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: phylink and an unusual PHY/SFP setup 2026-05-28 9:24 ` Michael Walle @ 2026-05-28 13:56 ` Andrew Lunn 0 siblings, 0 replies; 4+ messages in thread From: Andrew Lunn @ 2026-05-28 13:56 UTC (permalink / raw) To: Michael Walle; +Cc: Russell King, netdev > Thanks for the pointer. It looks like this can be used to support > both the Base-T port and the SerDes port of this PHY. > > But I'm still trying to wrap my head around the SerDes links and > it's configuration. Basically, phylink tries to match both ends of > the link and will configure the PCS and the PHY accordingly. But in > my case, the link between the MAC/PCS and the PHY is always SGMII > (at least that's what the Marvell datasheet says). The line side of > the PHY is then either Base-T if using the copper port or 1000Base-X, > 100Base-FX or SGMII on the fiber port. > > If I add these modes to the possible_interfaces property, the PCS > might be configured wrong, that is, in 1000Base-X mode for example. > But it really should only be ever in SGMII mode. You have something like rate adaptation for the PCS-PHY link. This is something you sometimes see for multigigi PHYs, where the MAC-PHY can uses a fixed mode, e.g. 10GBaseR, independent of what the media does. Pause frames are then used to slow down the MAC to the media speed. So it might be you can abuse rate adaptation to do what you need. What could play a role here is, if the media is running at 100Mbps does the MAC need to know to use SGMII at 100Mbps? This is different to rate adaptation, where the MAC is fixed. Also, if it is using 100Base-FX, does it want the SGMII to run a 100Mbps? So rate adaptation might not help. But the phylink code around rate adaption might give you some ideas how you can handle this. Andrew ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-05-28 13:56 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-05-27 8:19 phylink and an unusual PHY/SFP setup Michael Walle 2026-05-27 13:35 ` Andrew Lunn 2026-05-28 9:24 ` Michael Walle 2026-05-28 13:56 ` Andrew Lunn
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox