[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aEyprg21XsgmJoOR@shell.armlinux.org.uk>
Date: Fri, 13 Jun 2025 23:43:58 +0100
From: "Russell King (Oracle)" <linux@...linux.org.uk>
To: Leon Romanovsky <leon@...nel.org>
Cc: Andrew Lunn <andrew@...n.ch>,
Alexander Duyck <alexander.duyck@...il.com>, netdev@...r.kernel.org,
hkallweit1@...il.com, davem@...emloft.net, pabeni@...hat.com,
kuba@...nel.org, Jiri Pirko <jiri@...dia.com>
Subject: Re: [net-next PATCH 0/6] Add support for 25G, 50G, and 100G to fbnic
On Fri, Jun 13, 2025 at 07:00:24PM +0300, Leon Romanovsky wrote:
> Excellent, like you said, no one needs this code except fbnic, which is
> exactly as was agreed - no core in/out API changes special for fbnic.
Rather than getting all religious about this, I'd prefer to ask a
different question.
Is it useful to add 50GBASER, LAUI and 100GBASEP PHY interface modes,
and would anyone else use them? That's the real question here, and
*not* whomever is submitting the patches or who is the first user.
So, let's look into this. According to the proposed code and comments,
PHY_INTERFACE_MODE_50GBASER is a single lane for 50G with clause 134
FEC.
LAUI seems to also be a single lane 50G, no mention about FEC (so one
assumes it has none) and the comment states it's an attachment unit
interface. It doesn't mention anything else about it.
Lastly, we have PHY_INTERFACE_MDOE_100GBASEP, which is again a single
lane running at 100G with clause 134 FEC.
I assume these are *all* IEEE 802.3 defined protocols, sadly my 2018
version of 802.3 doesn't cover them. If they are, then someday, it is
probable that someone will want these definitions.
Now, looking at the SFP code:
- We already have SFF8024_ECC_100GBASE_CR4 which is value 0x0b.
SFF-8024 says that this is "100GBASE-CR4, 25GBASE-CR, CA-25G-L,
50GBASE-CR2 with RS (Clause 91) FEC".
We have a linkmode for 100GBASE-CR4 which we already use, and the
code adds the LAUI interface.
Well, "50GBASE-CR2" is 50GBASE-R over two lanes over a copper cable.
So, this doesn't fit as LAUI is as per the definition above
extracted from the code.
- Adding SFF8024_ECC_200GBASE_CR4 which has value 0x40. SFF-8024
says this is "50GBASE-CR, 100GBASE-CR2, 200GBASE-CR4". No other
information, e.g. whether FEC is supported or not.
We do have ETHTOOL_LINK_MODE_50000baseCR_Full_BIT, which is added.
This is added with PHY_INTERFACE_MODE_50GBASER
Similar for ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT, but with
PHY_INTERFACE_MDOE_100GBASEP. BASE-P doesn't sound like it's
compatible with BASE-R, but I have no information on this.
Finally, we have ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT which
has not been added.
So, it looks to me like some of these additions could be useful one
day, but I'm not convinced that their use with SFPs is correct.
Now, the next question is whether we have anyone else who could
possibly use this.
Well, we have the LX2160A SoC in mainline, used on SolidRun boards
that are available. These support 25GBASE-R, what could be called
50GBASE-R2 (CAUI-2), and what could be called 100GBASE-R4 (CAUI-4).
This is currently as far as my analysis has gone, and I'm starting
to fall asleep, so it's time to stop trying to comment further on
this right now. Some of what I've written may not be entirely
accurate either. I'm unlikely to have time to provide any further
comment until after the weekend.
However, I think a summary would be... the additions could be useful
but currently seem to me wrongly used.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
Powered by blists - more mailing lists