[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251118191523.4719ca2c@kernel.org>
Date: Tue, 18 Nov 2025 19:15:23 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Maxime Chevallier <maxime.chevallier@...tlin.com>
Cc: davem@...emloft.net, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
thomas.petazzoni@...tlin.com, Andrew Lunn <andrew@...n.ch>, Eric Dumazet
<edumazet@...gle.com>, Paolo Abeni <pabeni@...hat.com>, Russell King
<linux@...linux.org.uk>, linux-arm-kernel@...ts.infradead.org, Christophe
Leroy <christophe.leroy@...roup.eu>, Herve Codina
<herve.codina@...tlin.com>, Florian Fainelli <f.fainelli@...il.com>, Heiner
Kallweit <hkallweit1@...il.com>, Vladimir Oltean <vladimir.oltean@....com>,
Köry Maincent <kory.maincent@...tlin.com>, Marek
Behún <kabel@...nel.org>, Oleksij Rempel
<o.rempel@...gutronix.de>, Nicolò Veronese
<nicveronese@...il.com>, Simon Horman <horms@...nel.org>,
mwojtas@...omium.org, Antoine Tenart <atenart@...nel.org>,
devicetree@...r.kernel.org, Conor Dooley <conor+dt@...nel.org>, Krzysztof
Kozlowski <krzk+dt@...nel.org>, Rob Herring <robh@...nel.org>, Romain
Gantois <romain.gantois@...tlin.com>, Daniel Golle <daniel@...rotopia.org>,
Dimitri Fedrau <dimitri.fedrau@...bherr.com>
Subject: Re: [PATCH net-next v16 03/15] net: phy: Introduce PHY ports
representation
On Thu, 13 Nov 2025 09:14:05 +0100 Maxime Chevallier wrote:
> --- a/include/linux/ethtool.h
> +++ b/include/linux/ethtool.h
> @@ -228,6 +228,10 @@ extern const struct link_mode_info link_mode_params[];
>
> extern const char ethtool_link_medium_names[][ETH_GSTRING_LEN];
>
> +#define ETHTOOL_MEDIUM_FIBER_BITS (BIT(ETHTOOL_LINK_MEDIUM_BASES) | \
> + BIT(ETHTOOL_LINK_MEDIUM_BASEL) | \
> + BIT(ETHTOOL_LINK_MEDIUM_BASEF))
Hm, I think this is defined in uAPI as well?
> static inline const char *phy_mediums(enum ethtool_link_medium medium)
> {
> if (medium >= __ETHTOOL_LINK_MEDIUM_LAST)
> @@ -236,6 +240,22 @@ static inline const char *phy_mediums(enum ethtool_link_medium medium)
> return ethtool_link_medium_names[medium];
> }
>
> +static inline enum ethtool_link_medium ethtool_str_to_medium(const char *str)
> +{
> + int i;
> +
> + for (i = 0; i < __ETHTOOL_LINK_MEDIUM_LAST; i++)
> + if (!strcmp(phy_mediums(i), str))
> + return i;
> +
> + return ETHTOOL_LINK_MEDIUM_NONE;
> +}
Same comment about possibly moving this elsewhere as on phy_mediums()
> +static inline int ethtool_linkmode_n_pairs(unsigned int mode)
> +{
> + return link_mode_params[mode].pairs;
> +}
Powered by blists - more mailing lists