Re: hibernate vs. WoL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday 15 May 2009, Johannes Berg wrote:
> Hi,

Hi,

> According to pm.h one should enable wakup events in the suspend() and
> poweroff() callbacks.
> 
> However, poweroff is not called for the 'shutdown' or 'restart'
> hibernate methods. This seems problematic, since then with proper
> drivers platforms that have no 'platform' suspend method then cannot WoL
> or anything like that (well, for 'restart' that isn't very relevant).

I think the solution for these platforms is to define hibernation operations
(struct platform_hibernation_ops) that do nothing and use the 'platform' mode.

WoL is not really supported in the 'shutdown' mode due to drivers that
don't have a ->shutdown() method setting up WoL.  Also, on ACPI systems we
often need to do some ACPI magic for the WoL to really work and this is not
done in the 'platform' mode.

> The only way to hack around that seems to be to implement the
> dev->driver->shutdown method, but I don't think that is intended? On the
> other hand calling both ->shutdown and ->poweroff seems problematic.
> 
> Right now what I'm trying to do is preserve a wireless connection across
> hibernate. This is possible by telling the AP that we're asleep, in
> which case it will buffer frames for us (it may eventually kick us off
> anyway, but that's ok, without telling it we're asleep I don't even
> survive a 'reboot' method cycle).
> 
> Also, shouldn't it be possible to WoL while your machine is shut down?
> How do you program that?

Set up WoL in ->shutdown(), like e1000 for example.

In fact I don't like it too, because IMO we clearly seem to need to split
the current ->shutdown() into non-PM and PM parts, but that's how it goes
at the moment.

Thanks,
Rafael

_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux