Netdev List
 help / color / mirror / Atom feed
* [PATCH] net: phy: realtek: Clear MDIO_AN_10GBT_CTRL_ADV10G bit
@ 2026-06-19  1:15 Jan Klos
  2026-06-19  8:49 ` Maxime Chevallier
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Klos @ 2026-06-19  1:15 UTC (permalink / raw)
  To: Heiner Kallweit, Andrew Lunn, Russell King, netdev; +Cc: Jan Klos, linux-kernel

On RTL8127A connected to a link partner that advertises 10000baseT
speed cannot be changed to anything other than 10000baseT as 10GbE
is always advertised regardless of any setting. Fix this by
clearing MDIO_AN_10GBT_CTRL_ADV10G bit in rtl822x_config_aneg()'s
call to phy_modify_mmd_changed().

Signed-off-by: Jan Klos <honza.klos@gmail.com>
---
 drivers/net/phy/realtek/realtek_main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/phy/realtek/realtek_main.c b/drivers/net/phy/realtek/realtek_main.c
index 27268811f564..b65d0f5fa1a0 100644
--- a/drivers/net/phy/realtek/realtek_main.c
+++ b/drivers/net/phy/realtek/realtek_main.c
@@ -1802,7 +1802,8 @@ static int rtl822x_config_aneg(struct phy_device *phydev)
 		ret = phy_modify_mmd_changed(phydev, MDIO_MMD_VEND2,
 					     RTL_MDIO_AN_10GBT_CTRL,
 					     MDIO_AN_10GBT_CTRL_ADV2_5G |
-					     MDIO_AN_10GBT_CTRL_ADV5G, adv);
+					     MDIO_AN_10GBT_CTRL_ADV5G |
+					     MDIO_AN_10GBT_CTRL_ADV10G, adv);
 		if (ret < 0)
 			return ret;
 	}

base-commit: 7d8297e26b4e20b5d1c3c3fe51fe81a1c7fbc823
-- 
2.54.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] net: phy: realtek: Clear MDIO_AN_10GBT_CTRL_ADV10G bit
  2026-06-19  1:15 [PATCH] net: phy: realtek: Clear MDIO_AN_10GBT_CTRL_ADV10G bit Jan Klos
@ 2026-06-19  8:49 ` Maxime Chevallier
  0 siblings, 0 replies; 2+ messages in thread
From: Maxime Chevallier @ 2026-06-19  8:49 UTC (permalink / raw)
  To: Jan Klos, Heiner Kallweit, Andrew Lunn, Russell King, netdev; +Cc: linux-kernel

Hi,

On 6/19/26 03:15, Jan Klos wrote:
> On RTL8127A connected to a link partner that advertises 10000baseT
> speed cannot be changed to anything other than 10000baseT as 10GbE
> is always advertised regardless of any setting. Fix this by
> clearing MDIO_AN_10GBT_CTRL_ADV10G bit in rtl822x_config_aneg()'s
> call to phy_modify_mmd_changed().

Makes sense, this is also done as part of the C45 config_aneg sequence.

You're missing a few things process-wise :

 - a Fixes tag to indicate the commit that introduced the bug

 - You must CC all the relevant maintainers, including the top-level networking
   maintainers, use ./scripts/get_maintainers.pl to get the list

 - The patch must have in the subject an indication that this targets the
   'net' tree, for bugfixes, see :

https://docs.kernel.org/process/maintainer-netdev.html

Feel free to re-send a V2 (after waiting 24h), and add my review tag :

Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com>

Maxime

> 
> Signed-off-by: Jan Klos <honza.klos@gmail.com>
> ---
>  drivers/net/phy/realtek/realtek_main.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/phy/realtek/realtek_main.c b/drivers/net/phy/realtek/realtek_main.c
> index 27268811f564..b65d0f5fa1a0 100644
> --- a/drivers/net/phy/realtek/realtek_main.c
> +++ b/drivers/net/phy/realtek/realtek_main.c
> @@ -1802,7 +1802,8 @@ static int rtl822x_config_aneg(struct phy_device *phydev)
>  		ret = phy_modify_mmd_changed(phydev, MDIO_MMD_VEND2,
>  					     RTL_MDIO_AN_10GBT_CTRL,
>  					     MDIO_AN_10GBT_CTRL_ADV2_5G |
> -					     MDIO_AN_10GBT_CTRL_ADV5G, adv);
> +					     MDIO_AN_10GBT_CTRL_ADV5G |
> +					     MDIO_AN_10GBT_CTRL_ADV10G, adv);
>  		if (ret < 0)
>  			return ret;
>  	}
> 
> base-commit: 7d8297e26b4e20b5d1c3c3fe51fe81a1c7fbc823


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-06-19  8:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-19  1:15 [PATCH] net: phy: realtek: Clear MDIO_AN_10GBT_CTRL_ADV10G bit Jan Klos
2026-06-19  8:49 ` Maxime Chevallier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox