]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: dsa: require .support_eee() method to be implemented
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Tue, 10 Dec 2024 14:18:52 +0000 (14:18 +0000)
committerJakub Kicinski <kuba@kernel.org>
Thu, 12 Dec 2024 04:29:39 +0000 (20:29 -0800)
Now that we have updated all drivers, switch DSA to require an
implementation of the .support_eee() method for EEE to be usable,
rather than defaulting to being permissive when not implemented.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Link: https://patch.msgid.link/E1tL14e-006cZy-AT@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/dsa/user.c

index a74339680010474e2f6c22b804d655fd08b0f9eb..4a8de48a6f249d2001d1de5f602c0b53cbdb627d 100644 (file)
@@ -1230,7 +1230,7 @@ static int dsa_user_set_eee(struct net_device *dev, struct ethtool_keee *e)
        int ret;
 
        /* Check whether the switch supports EEE */
-       if (ds->ops->support_eee && !ds->ops->support_eee(ds, dp->index))
+       if (!ds->ops->support_eee || !ds->ops->support_eee(ds, dp->index))
                return -EOPNOTSUPP;
 
        /* Port's PHY and MAC both need to be EEE capable */
@@ -1254,7 +1254,7 @@ static int dsa_user_get_eee(struct net_device *dev, struct ethtool_keee *e)
        int ret;
 
        /* Check whether the switch supports EEE */
-       if (ds->ops->support_eee && !ds->ops->support_eee(ds, dp->index))
+       if (!ds->ops->support_eee || !ds->ops->support_eee(ds, dp->index))
                return -EOPNOTSUPP;
 
        /* Port's PHY and MAC both need to be EEE capable */