]> www.infradead.org Git - users/hch/misc.git/commitdiff
net: sh_eth: Disable WoL if system can not suspend
authorNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Tue, 9 Sep 2025 08:58:49 +0000 (10:58 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 11 Sep 2025 00:58:35 +0000 (17:58 -0700)
The MAC can't facilitate WoL if the system can't go to sleep. Gate the
WoL support callbacks in ethtool at compile time using CONFIG_PM_SLEEP.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://patch.msgid.link/20250909085849.3808169-1-niklas.soderlund+renesas@ragnatech.se
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/renesas/sh_eth.c

index 5a367c5523bb860f31671fbd148e8e77daa7fa8f..6fb0ffc1c8441242b7efcf2648583d362ad5068d 100644 (file)
@@ -2360,6 +2360,7 @@ static int sh_eth_set_ringparam(struct net_device *ndev,
        return 0;
 }
 
+#ifdef CONFIG_PM_SLEEP
 static void sh_eth_get_wol(struct net_device *ndev, struct ethtool_wolinfo *wol)
 {
        struct sh_eth_private *mdp = netdev_priv(ndev);
@@ -2386,6 +2387,7 @@ static int sh_eth_set_wol(struct net_device *ndev, struct ethtool_wolinfo *wol)
 
        return 0;
 }
+#endif
 
 static const struct ethtool_ops sh_eth_ethtool_ops = {
        .get_regs_len   = sh_eth_get_regs_len,
@@ -2401,8 +2403,10 @@ static const struct ethtool_ops sh_eth_ethtool_ops = {
        .set_ringparam  = sh_eth_set_ringparam,
        .get_link_ksettings = phy_ethtool_get_link_ksettings,
        .set_link_ksettings = phy_ethtool_set_link_ksettings,
+#ifdef CONFIG_PM_SLEEP
        .get_wol        = sh_eth_get_wol,
        .set_wol        = sh_eth_set_wol,
+#endif
 };
 
 /* network device open function */