summaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/microchip/ksz_common.h
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2023-10-26 07:10:51 +0200
committerJakub Kicinski <kuba@kernel.org>2023-10-27 14:43:53 -0700
commit8afb91acc4a3ea25ce15160df1fcab93b155b75e (patch)
treeea76e3a675f8882eb8fa66059b08490def9ae58a /drivers/net/dsa/microchip/ksz_common.h
parent77c819cb493acf04bcbb52411debc4ef044429b2 (diff)
downloadlinux-stable-8afb91acc4a3ea25ce15160df1fcab93b155b75e.tar.gz
linux-stable-8afb91acc4a3ea25ce15160df1fcab93b155b75e.tar.bz2
linux-stable-8afb91acc4a3ea25ce15160df1fcab93b155b75e.zip
net: dsa: microchip: Ensure Stable PME Pin State for Wake-on-LAN
Ensures a stable PME (Power Management Event) pin state by disabling PME on system start and enabling it on shutdown only if WoL (Wake-on-LAN) is configured. This is needed to avoid issues with some PMICs (Power Management ICs). Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Link: https://lore.kernel.org/r/20231026051051.2316937-6-o.rempel@pengutronix.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/dsa/microchip/ksz_common.h')
-rw-r--r--drivers/net/dsa/microchip/ksz_common.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/dsa/microchip/ksz_common.h b/drivers/net/dsa/microchip/ksz_common.h
index 14b4828f80a1..b7e8a403a132 100644
--- a/drivers/net/dsa/microchip/ksz_common.h
+++ b/drivers/net/dsa/microchip/ksz_common.h
@@ -378,6 +378,7 @@ struct ksz_dev_ops {
struct ethtool_wolinfo *wol);
int (*set_wol)(struct ksz_device *dev, int port,
struct ethtool_wolinfo *wol);
+ void (*wol_pre_shutdown)(struct ksz_device *dev, bool *wol_enabled);
void (*config_cpu_port)(struct dsa_switch *ds);
int (*enable_stp_addr)(struct ksz_device *dev);
int (*reset)(struct ksz_device *dev);