Hi, WayneWWW,
The board we use in this WoLAN testing is the NX dev kit from nVIDIA. I did the testing again today after removing the NVME M.2 card and USB mouse, and I used the default power model (i.e., 10 W & 2 CPUs) for the testing today. So, the HW configuration and SW configuration are both the default setting when I received this dev kit from nVIDIA. However, I still met the same network interface issue and crash issue after woke up NX from deep sleep mode by magic packet.
Here is the SW info on this dev board:
uname -a
Linux brain-nx1 4.9.140-tegra #1 SMP PREEMPT Wed Apr 8 18:15:20 PDT 2020 aarch64 aarch64 aarch64 GNU/Linux
cat /etc/os-release
NAME=“Ubuntu”
VERSION=“18.04.4 LTS (Bionic Beaver)”
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=“Ubuntu 18.04.4 LTS”
VERSION_ID=“18.04”
HOME_URL=“https://www.ubuntu.com/”
SUPPORT_URL=“https://help.ubuntu.com/”
BUG_REPORT_URL=“https://bugs.launchpad.net/ubuntu/”
PRIVACY_POLICY_URL=“Data privacy | Ubuntu”
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
Here are the detailed steps on both host PC side and NX dev kit side (ETH IP address is 192.168.3.6):
On host PC side:
ping 192.168.3.6
arp -a 192.168.3.6
? (192.168.3.6) at 48:b0:2d:07:75:8a [ether] on eth0
On NX dev kit:
ethtool -s eth0 wol g
ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: g
Link detected: yes
The output of ethtool above shows wake-on-LAN by magic packet is enabled for eth0.
Then run the following command on NX dev kit:
sudo systemctl suspend
I use a power supply reader which provides power to NX dev kit. After I ran the above command, the power consumption of NX dev kit dropped from 4W to 0.82W, which confirms the NX has entered sleep mode.
Then I ran the following command on host PC side to wake up NX:
etherwake 48:b0:2d:07:75:8a
After a couple of seconds, the power consumption of NX went up and the Ubuntu UI was shown on the display which is connected to NX dev kit via HDMI. However, I could not ping through NX’s ETH interface from host PC side. After I login into NX dev kit from its UI, the network manager shows the network connection is lost (Please refer to the picture uploaded here).
Then I opened a terminal window and ran “ifconfig eth0” there. The terminal was hung and the whole system rebooted by itself after 30-60 seconds.
I also tried another tool called wakeonlan today. wakeonlan can also wake up NX by magic packet, but NX ran into the same issue here. It seems the issue happened during the resume of NX system.
Please let me know if you need any more information.
Thanks for your help here!