> -----Original Message-----
> From: Michal Kubecek <[email protected]>
> Sent: Thursday, November 26, 2020 11:08 PM
> To: Danielle Ratson <[email protected]>
> Cc: Jiri Pirko <[email protected]>; Andrew Lunn <[email protected]>; Jakub 
> Kicinski <[email protected]>; Ido Schimmel
> <[email protected]>; [email protected]; [email protected]; Jiri Pirko 
> <[email protected]>; [email protected]; mlxsw
> <[email protected]>; Ido Schimmel <[email protected]>; 
> [email protected]
> Subject: Re: [PATCH net-next 1/6] ethtool: Extend link modes settings uAPI 
> with lanes
> 
> On Wed, Nov 25, 2020 at 10:35:35AM +0000, Danielle Ratson wrote:
> > > > What do you think of passing the link modes you have suggested as
> > > > a bitmask, similar to "supported", that contains only one positive bit?
> > > > Something like that:
> >
> > Hi Michal,
> >
> > Thanks for your response.
> >
> > Actually what I said is not very accurate.
> > In ethtool, for speed 100G and 4 lanes for example, there are few link 
> > modes that fits:
> > ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT
> > ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT
> > ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT
> > ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT
> >
> > The difference is the media. And in the driver we shrink into one bit.
> > But maybe that makes passing a bitmask more sense, or am I missing 
> > something?
> 
> But as far as I understand, at any moment, only one of these will be actually 
> in use so that's what the driver should report. Or is the
> problem that the driver cannot identify the media in use? (To be
> precise: by "cannot identify" I mean "it's not possible for the driver to 
> find out", not "current code does not distinguish".)
> 
> Michal

After more investigation, those are my conclusions:
We have two types of supported asics in the driver- one of them is able to 
distinguish between the medias and the other one doesn't.
So in the first type I can send one bit as you requested from the driver to 
ethtool but in the other one I can't.

The suggestions I have are:
1. Add a bit that for unknown media for each link (something like 
ETHTOOL_LINK_MODE_100000unknown_Full_BIT). I am not sure it is even possible or 
makes sense.
2. Pass the link mode as bitmap.

Do you see any other option?

Thanks.

Reply via email to