[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250424130222.3959457-2-o.rempel@pengutronix.de>
Date: Thu, 24 Apr 2025 15:02:19 +0200
From: Oleksij Rempel <o.rempel@...gutronix.de>
To: Woojung Huh <woojung.huh@...rochip.com>,
Andrew Lunn <andrew@...n.ch>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Heiner Kallweit <hkallweit1@...il.com>,
Russell King <linux@...linux.org.uk>
Cc: Oleksij Rempel <o.rempel@...gutronix.de>,
kernel@...gutronix.de,
linux-kernel@...r.kernel.org,
netdev@...r.kernel.org,
UNGLinuxDriver@...rochip.com,
Simon Horman <horms@...nel.org>,
Maxime Chevallier <maxime.chevallier@...tlin.com>
Subject: [PATCH net-next v1 1/4] net: dsa: user: Skip set_mac_eee() if support_eee() is implemented
Some switches with integrated PHYs, like Microchip KSZ, manage EEE
internally based on PHY advertisement and link resolution. If
ds->ops->support_eee() is implemented, assume EEE is supported
and skip requiring set_mac_eee().
Signed-off-by: Oleksij Rempel <o.rempel@...gutronix.de>
---
net/dsa/user.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/net/dsa/user.c b/net/dsa/user.c
index 804dc7dac4f2..87b78a4c1d6c 100644
--- a/net/dsa/user.c
+++ b/net/dsa/user.c
@@ -1246,14 +1246,12 @@ static int dsa_user_set_eee(struct net_device *dev, struct ethtool_keee *e)
/* If the port is using phylink managed EEE, then an unimplemented
* set_mac_eee() is permissible.
*/
- if (!phylink_mac_implements_lpi(ds->phylink_mac_ops)) {
+ if (ds->ops->set_mac_eee &&
+ !phylink_mac_implements_lpi(ds->phylink_mac_ops)) {
/* Port's PHY and MAC both need to be EEE capable */
if (!dev->phydev)
return -ENODEV;
- if (!ds->ops->set_mac_eee)
- return -EOPNOTSUPP;
-
ret = ds->ops->set_mac_eee(ds, dp->index, e);
if (ret)
return ret;
--
2.39.5
Powered by blists - more mailing lists