Update after further testing. The original report needs correcting:
WoL from poweroff (S5) now works on the stock Ubuntu kernel. Two things
changed in the meantime, and I cannot say which mattered: a defective
USB stick was removed (it kept GPE 6E asserted and also broke suspend
entirely, see below), and Secure Boot was disabled for the mainline
kernel tests. No kernel update was involved - 7.0.0-38-generic has been
running throughout.
Correct kernel version for this report: 7.0.0-38-generic (not
7.0.0-30-generic as originally stated).
Current state on ASUS NUC 15 (DSDT: NUC15CR, latest BIOS),
Intel I226-V / igc, enp86s0:
State | wake via USB keyboard | wake via magic packet
----------|-----------------------|----------------------
S5 | works | works
s2idle | works | DOES NOT WORK
deep (S3) | n/a, see below | n/a, see below
So the remaining issue is narrow: from s2idle the NIC does not deliver
a wake event, while a USB device in the same sleep state does.
Separate issue: mem_sleep=deep is broken on this board independently of
WoL. On any wake attempt from deep the machine powers off completely
instead of resuming, and has to be switched on again. All deep-related
WoL results are therefore inconclusive.
Verified with WoL failing from s2idle:
- ethtool enp86s0: "Supports Wake-on: pumbg", "Wake-on: g"
- NetworkManager: 802-3-ethernet.wake-on-lan = magic
- /sys/class/net/enp86s0/device/power/wakeup = enabled
- /sys/bus/pci/devices/0000:00:1c.0/power/wakeup (root port) = enabled
- /proc/acpi/wakeup: RP05 (00:1c.0) and PXSX (56:00.0) both enabled
- magic packet (102 bytes, UDP broadcast port 9) reaches the NIC,
confirmed with tcpdump while the system is up
- link LED stays lit while suspended, so the NIC has standby power
- TLP not installed
- also fails with NetworkManager stopped before suspend
Tried without success:
- kernel parameter pcie_pme=nomsi
- kernel parameter pcie_ports=compat
- systemd unit running "ethtool -s enp86s0 wol g" just before poweroff
- system-shutdown hook unbinding igc from 0000:56:00.0, with and
without a PCI reset of the device
Possibly relevant: the kernel takes native control of PME at boot
("_OSC: OS now controls [... PME ...]"), and the root port of the NIC
logs "pcieport 0000:00:1c.0: PME: Spurious native interrupt!" during
boot. On every resume the driver logs "Timeout reading IGC_PTM_STAT
register".
A user on the Intel community forum reports a similar I226-V/igc
picture (works under Windows, fails under several Linux distributions),
though in that case the link LEDs go dark during suspend, which they do
not here:
https://community.intel.com/t5/Ethernet-Products/Intel-I226-V-Wake-on-LAN-works-in-Windows-but-fails-under-Linux/m-p/1756375
Happy to run further tests or collect additional debug output.
** Summary changed:
- Wake-on-LAN does not work after shutdown or suspend on ASUS NUC 15 (igc),
works with Fedora on same hardware
+ Wake-on-LAN from s2idle does not work on ASUS NUC 15 (Intel I226-V, igc);
wake from S5 and USB wake from s2idle both work
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2171282
Title:
Wake-on-LAN from s2idle does not work on ASUS NUC 15 (Intel I226-V,
igc); wake from S5 and USB wake from s2idle both work
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2171282/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs