Contribute
Register

Ethernet drivers with WOL from shutdown support

Status
Not open for further replies.
Joined
Aug 1, 2015
Messages
261
Motherboard
Z97X-UD3H-BK
CPU
i7-4790k
Graphics
R9 270X
Mobile Phone
  1. Android
This post will provide a list of Ethernet kexts with support for Wake on LAN from shutdown (S5 power state). I thought it would be helpful to anyone looking for this feature to centralize the information here. This list can be updated if/when more are developed. At present there are two variants of the IntelMausi kexts available.

Mieze/IntelMausiEthernet:

https://github.com/fischerscode/IntelMausiEthernet-WOL
https://github.com/jpz4085/IntelMausiEthernet

acidanthera/IntelMausi:

https://github.com/fischerscode/IntelMausi-WOL
https://github.com/jpz4085/IntelMausi

Both enable WOL from shutdown as well as sleep but work differently. The fischerscode version has WOL enabled by default and is independent of the macOS "Wake for Ethernet network access" setting under Energy Saver in System Preferences. My version controls both with the Energy Saver setting. I began work on mine before I discovered the other one and present both here for consideration. Drivers for other controllers could probably be created/modified using whichever approach is more popular.

Consult your motherboard or system manual regarding BIOS power management settings. WOL must be enabled and ERP disabled. All four kexts were tested with my desktop (I217V) and laptop (82579LM) successfully.
 
Thank you so much!!! I was looking for something like this! :)
I just have two questions, as I am also a programmer. What is the difference between the 2 methods? I saw that you keep the device enabled in S5 by continuously polling it somehow. Which of the 2 approaches would you prefer for best practice?

Keep up the good work.
 
Thank you so much!!! I was looking for something like this!
You're certainly welcome!
What is the difference between the 2 methods?
My version is macOS controlled. The system setting (in Preferences - Energy Saver) will enable/disable WOL from sleep AND shutdown together. The other version ignores the system setting and is controlled by a boot argument meaning WOL is enabled/disabled at boot and can't be changed without restarting. That's the difference.
I saw that you keep the device enabled in S5 by continuously polling it somehow.
No. When shutting down the computer the driver will check to see if Wake on Magic Packet is enabled in the Ethernet wake settings, if so it will set the "wolActive" variable and cycle the hardware enable/disable routines to put the controller in the correct mode. This happens only once at restart and shutdown before the kext unloads. WOL from sleep is still handled by the original code.
Which of the 2 approaches would you prefer for best practice?
I'm partial to my approach. Since macOS already has the ability to toggle WOL from sleep I think it makes sense to tie WOL from shutdown to the same setting rather than ignoring it and using a boot argument to control both. That's my take on it anyway.
 
Status
Not open for further replies.
Back
Top