Wake on Lan

Hello folks,
Been spending many hours trying to configure persistent wake on lan on my odroid n2 with Manjaro, with no success.

sudo ethtool -s eth0 wol g -> sudo ethtool eth0 | grep Wake => Wake-on: g Reboot -> sudo ethtool eth0 | grep Wake => Wake-on: d

Set WOL_DISABLE=N in /etc/default/tlp

Created /etc/systemd/system/wol@.service

[code][Unit]
Description=Wake-on-LAN for %i
Requires=network.target
After=network.target

[Service]
ExecStart=/usr/bin/ethtool -s %i wol g
Type=oneshot

[Install]
WantedBy=multi-user.target[/code]
Then sudo systemctl start wol@eth0 sudo systemctl enable wol@eth0

Didn't work.

Created a cron with cronie

@reboot /usr/bin/ethtool -s eth0 wol g

Didn't work either.

Can someone tell me if there's a trick or something I'm missing? (I'm a total beginner, but have been learning a lot since the last few days about services)

(Yes, I checked https://wiki.archlinux.org/index.php/Wake-on-LAN)

Thanks!

If you have an r8168 realtek adapter be sure you are using the r8169 kernel module.

If that's not the solution please post:

inxi -Fxxxz
2 Likes

Hello tbg, thanks for your answer! I am a real beginner, can you give me any leads to achieving this update and how to check the current kernel?
Thanks for your patience!

When someone offers to assist and requests outputs you would be well advised to provide them.

Of course, I just didn't want to put the cart before the horse, since you told me this should happen after trying to update kernel first :wink:
There you go:

System:    Host: odroid Kernel: 4.9.177-2-MANJARO-ARM aarch64 bits: 64 compiler: gcc v: 8.2.1 Desktop: KDE Plasma 5.16.4 
           tk: Qt 5.13.0 wm: kwin_x11 dm: SDDM Distro: Manjaro ARM 
Machine:   Type: ARM Device System: Hardkernel ODROID-N2 rev: 0400 serial: <filter> 
CPU:       Topology: 6-Core (2-Die) model: N/A variant-1: cortex-a73 variant-2: cortex-a53 bits: 64 type: MCP MCM arch: ARMv8 
           rev: 4 
           features: Use -f option to see features bogomips: 0 
           Speed: 1896 MHz min/max: 100/1896:1800 MHz Core speeds (MHz): 1: 1896 2: 1896 3: 1800 4: 1800 5: 1800 6: 1800 
Graphics:  Device-1: amhdmitx driver: amhdmitx v: N/A bus ID: N/A chip ID: amlogic:amhdmitx 
           Device-2: meson-g12b driver: meson_fb v: N/A bus ID: N/A chip ID: amlogic:meson-fb 
           Display: x11 server: X.Org 1.20.5 driver: fbturbo compositor: kwin_x11 tty: N/A 
           Message: Unable to show advanced data. Required tool glxinfo missing. 
Audio:     Device-1: audio- driver: aml_audio_controller bus ID: N/A chip ID: amlogic:ff642000 
           Device-2: g12a-audio-clocks driver: audio_clocks bus ID: N/A chip ID: amlogic:ff642000 
           Device-3: g12a-audio-ddr-manager driver: audio_ddr_manager bus ID: N/A chip ID: amlogic:ff642000 
           Device-4: amhdmitx driver: amhdmitx bus ID: N/A chip ID: amlogic:amhdmitx 
           Device-5: snd-iomap driver: auge_snd_iomap bus ID: N/A chip ID: amlogic:aml_snd_iomap 
           Device-6: audio_data driver: audio_data_debug bus ID: N/A chip ID: amlogic:audio_data 
           Device-7: audiolocker driver: audiolocker bus ID: N/A chip ID: amlogic:locker 
           Device-8: vdac-g12b driver: aml_vdac bus ID: N/A chip ID: amlogic:vdac 
           Sound Server: ALSA v: k4.9.177-2-MANJARO-ARM 
Network:   Device-1: g12a-eth-dwmac driver: meson6_dwmac v: N/A port: N/A bus ID: N/A chip ID: amlogic:ff3f0000 
           IF: eth0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    Local Storage: total: 975.80 GiB used: 161.83 GiB (16.6%) 
           ID-1: /dev/mmcblk0 model: AJTD4R size: 14.56 GiB serial: <filter> rev: 0x8 scheme: MBR 
           ID-2: /dev/mmcblk1 vendor: Silicon Motion model: SM32G size: 29.72 GiB serial: <filter> scheme: MBR 
           ID-3: /dev/sda type: USB vendor: Samsung model: SSD 860 EVO 1TB size: 931.51 GiB serial: <filter> scheme: GPT 
Partition: ID-1: / size: 14.04 GiB used: 7.86 GiB (56.0%) fs: ext4 dev: /dev/mmcblk0p2 
           ID-2: /boot size: 213.4 MiB used: 40.7 MiB (19.1%) fs: vfat dev: /dev/mmcblk0p1 
Sensors:   Message: No sensors data was found. Is sensors configured? 
Info:      Processes: 191 Uptime: 9h 27m Memory: 3.62 GiB used: 972.7 MiB (26.2%) Init: systemd v: 242 
           target: graphical.target Compilers: gcc: 9.1.0 Shell: bash v: 5.0.9 running in: konsole inxi: 3.0.36 

You should have specified you were using Manjaro Arm. Maybe one of the Arm maintainers are familiar with your issue. Perhaps @Strit can answer your question.

I am totally unfamiliar with the Arm architecture, so I do not have any knowledge of the adapter or driver in use.

I don't know (or use) Wake On LAN myself, so I don't know how easy it is, but I did find this wiki post about the Odroid N2 and Wake On LAN.

https://wiki.odroid.com/odroid-n2/application_note/software/wake-on-lan

1 Like

Maybe this command will yield more information about your adapter.

Please post:

lspci -knnvvv | grep -i net

It seems it needs to be enabled in the uboot for the device, since that passes arguments on to the kernel after boot.

And the current uboot package does not currently have it.

1 Like

Ya, I kind of had the feeling that feature might be unsupported.

I moved the thread to the Arm sub-forum just in case an Arm user may have further info on this.

Give this a read:

It combines a udev rule and a systemd service to ensure the LAN wakes.

It may not perform any better than the service from the Archwiki, but it's worth a try I guess.

1 Like

Thank you @Strit and @tbg
If I understand correctly from what @Strit said, there is no way the wol feature would work for now because of the uboot current version, right?
I will cross check your last link @tbg and see if there is something I can do, but at least I can start thinking about giving up setting wol for now.
PS: I tried to add the lspci command but didn't manage to make it work (and yes pciutils is installed: "$ pacman -Qo /usr/sbin/lspci
/usr/bin/lspci belongs to pciutils 3.6.2-1")

pcilib: Cannot open /proc/bus/pci
lspci: Cannot find any working access method.

Yep. It would need to be added to the uboot package for it to be enabled.

Ok so there is no point to even try tbg's last link, is it?

As you could see, I am a real beginner, but who is in charge of updating the uboot package and why would Odroid create a dedicated page for WoL if they don't provide an up-to-date kernel to enable it?

Arch Linux ARM did the uboot for the Odroid N2, which we use, because it works.

And it's not the kernel that does not have support fot it, it's the uboot. I am pretty sure the kernel does have the support.

Ok, thanks for your help! Is this something that gets updated from time to time? And if yes, through which means (manjaro update, other)?

That uboot package has not been updated since it got added to the Arch Linux ARM repo, probably because it actually still boots the device and there has been no real reason to update it.

Wake On LAN is probably a niche usecase, so it probably won't get added, even though the uboot it self might get updated at some point.

Ok, thanks for your time @Strit !

1 Like

But. That being said.

Odroid N2 support is coming into mainline u-boot and I am trying to get an updated u-boot package working with that for the Odroid N2.
And I am including the WoL support into it. Or atleast trying to. Since I don't have an Odroid N2 I can't really test it much.

1 Like

Forum kindly sponsored by Bytemark