[PATCH RFC net-next 6/7] net: stmmac: add helpers to indicate WoL enable status
Russell King (Oracle)
linux at armlinux.org.uk
Mon Jul 28 10:54:18 PDT 2025
On Mon, Jul 28, 2025 at 07:28:01PM +0200, Andrew Lunn wrote:
> > +static inline bool stmmac_wol_enabled_mac(struct stmmac_priv *priv)
> > +{
> > + return priv->plat->pmt && device_may_wakeup(priv->device);
> > +}
> > +
> > +static inline bool stmmac_wol_enabled_phy(struct stmmac_priv *priv)
> > +{
> > + return !priv->plat->pmt && device_may_wakeup(priv->device);
> > +}
>
> I agree this is a direct translation into a helper.
>
> Reviewed-by: Andrew Lunn <andrew at lunn.ch>
>
> I'm guessing at some point you want to change these two
> helpers. e.g. at some point, you want to try getting the PHY to do the
> WoL, independent of !priv->plat->pmt?
>
> > - if (device_may_wakeup(priv->device) && !priv->plat->pmt)
> > + if (stmmac_wol_enabled_phy(priv))
> > phylink_speed_down(priv->phylink, false);
>
> This might be related to the next patch. But why only do speed down
> when PHY is doing WoL? If the MAC is doing WoL, you could also do a
> speed_down.
No idea, but that's what the code currently does, and, as ever with
a cleanup series, I try to avoid functional changes in cleanup series.
Also, bear in mind that I can't test any of this.
We haven't yet been successful in getting WoL working in mainline. It
_seems_ that the Jetson Xaiver NX platform should be using PHY mode,
but the Realtek PHY driver is definitely broken for WoL. Even with
that hacked, and along with other fixes that I've been given, I still
can't get the SoC to wake up via WoL. In fact, the changes to change
DT to specify the PHY interrupt as being routed through the PM
controller results in normal PHY link up/down interrupts no longer
working.
I'd like someone else to test functional changes!
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
More information about the linux-arm-kernel
mailing list