On Tue, 2 Dec 2014 23:01:29 +0300
Andrey Skvortsov <andrej.skvort...@gmail.com> wrote:

> On Mon, Dec 01, 2014 at 10:10:23PM +0100, Michael Büsch wrote:
> > On Mon,  1 Dec 2014 23:46:38 +0300
> > Andrey Skvortsov <andrej.skvort...@gmail.com> wrote:
> > 
> > > Wake On Lan was not working on laptop DELL Vostro 1500.
> > > If WOL was turned on, BCM4401 was powered up in suspend mode. LEDs 
> > > blinked.
> > > But the laptop could not be woken up with the Magic Packet. The reason for
> > > that was that PCIE was not enabled as a system wakeup source and
> > > therefore the host PCI bridge was not powered up in suspend mode.
> > > PCIE was not enabled in suspend by PM because no child devices were
> > > registered as wakeup source during suspend process.
> > > On laptop BCM4401 is connected through the SSB bus, that is connected to 
> > > the
> > > PCI-Express bus. SSB and B44 did not use standard PM wakeup functions
> > > and did not forward wakeup settings to their parents.
> > > To fix that B44 driver enables PM wakeup and registers new wakeup source
> > > using device_set_wakeup_enable(). Wakeup is automatically reported to the 
> > > parent SSB
> > > bus via power.wakeup_path. SSB bus enables wakeup for the parent PCI 
> > > bridge, if there is any
> > > child devices with enabled wakeup functionality. All other steps are
> > > done by PM core code.
> > 
> > Thanks, this looks good.
> > I assume you tested this (I currently don't have a device to test this).
> 
> Sure, I've tested it. WOL from suspend is working and after resume from 
> hibernate Ethernet is working too.

That sounds good, indeed.
I'd still prefer, if someone with b43 (wireless) would test it, too.

-- 
Michael

Attachment: pgpgt9vIXWIHz.pgp
Description: OpenPGP digital signature

Reply via email to