[PATCH net-next] net: microchip: lan743x: add ethtool nway_reset support
From: Nicolai Buchwitz
Date: Mon Feb 23 2026 - 03:55:38 EST
Wire phylink_ethtool_nway_reset() as the .nway_reset ethtool operation,
allowing userspace to restart PHY autonegotiation via 'ethtool -r'.
Signed-off-by: Nicolai Buchwitz <nb@xxxxxxxxxxx>
Reviewed-by: Russel King (Oracle) <rmk+kernel@xxxxxxxxxxxxxxx>
---
drivers/net/ethernet/microchip/lan743x_ethtool.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/net/ethernet/microchip/lan743x_ethtool.c b/drivers/net/ethernet/microchip/lan743x_ethtool.c
index 8a3c1ecc7866..9195419ecee0 100644
--- a/drivers/net/ethernet/microchip/lan743x_ethtool.c
+++ b/drivers/net/ethernet/microchip/lan743x_ethtool.c
@@ -1079,6 +1079,13 @@ static int lan743x_ethtool_set_eee(struct net_device *netdev,
return phylink_ethtool_set_eee(adapter->phylink, eee);
}
+static int lan743x_ethtool_nway_reset(struct net_device *netdev)
+{
+ struct lan743x_adapter *adapter = netdev_priv(netdev);
+
+ return phylink_ethtool_nway_reset(adapter->phylink);
+}
+
static int
lan743x_ethtool_set_link_ksettings(struct net_device *netdev,
const struct ethtool_link_ksettings *cmd)
@@ -1369,6 +1376,7 @@ const struct ethtool_ops lan743x_ethtool_ops = {
.set_rxfh = lan743x_ethtool_set_rxfh,
.get_rxfh_fields = lan743x_ethtool_get_rxfh_fields,
.get_ts_info = lan743x_ethtool_get_ts_info,
+ .nway_reset = lan743x_ethtool_nway_reset,
.get_eee = lan743x_ethtool_get_eee,
.set_eee = lan743x_ethtool_set_eee,
.get_link_ksettings = lan743x_ethtool_get_link_ksettings,
--
2.39.5