Re: [PATCH net 3/3] net: lan743x: Address problems with wake option flags configuration sequences

From: Andrew Lunn
Date: Mon Feb 26 2024 - 20:58:07 EST


On Mon, Feb 26, 2024 at 01:39:34PM +0530, Raju Lakkaraju wrote:
> Wake options handling has been reworked as follows:
> a. We only enable secure on magic packet when both secure and magic wol
> options are requested together.
> b. If secure-on magic packet had been previously enabled, and a subsequent
> command does not include it, we add it. This was done to workaround a
> problem with the 'pm-suspend' application which is unaware of secure-on
> magic packet being enabled and can unintentionally disable it prior to
> putting the system into suspend.

This seems to be in a bit of a grey area. But ethtool says:

wol p|u|m|b|a|g|s|f|d...
Sets Wake-on-LAN options. Not all devices support this.
The argument to this option is a string of characters speci‐
fying which options to enable.
p Wake on PHY activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
a Wake on ARP
g Wake on MagicPacket™
s Enable SecureOn™ password for MagicPacket™
f Wake on filter(s)
d Disable (wake on nothing). This option
clears all previous options.

d clears everything. All other things enable one option. There does
not appear to be a way to disable a single option, and i would say,
adding options is incremental.

So:

> a. We only enable secure on magic packet when both secure and magic wol
> options are requested together.

I don't think they need to be requested together. I think you can
first enable Wake on MagicPacket and then in a second call to ethtool
Enable SecureOn password for MagicPacket. I also don't think it would
unreasonable to accept Enable SecureOn password for MagicPacket and
have that imply Wake on MagicPacket.

And:

> b. If secure-on magic packet had been previously enabled, and a subsequent
> command does not include it, we add it.

If there has not been a d, secure-on magic packet should remain
enabled until there is a d.

Andrew