[PATCH] SSB / B44: fix WOL for BCM4401

Michael Büsch m at bues.ch
Wed Dec 3 07:18:55 PST 2014


On Tue, 02 Dec 2014 16:23:49 -0600
Larry Finger <Larry.Finger at lwfinger.net> wrote:

> On 12/02/2014 02:12 PM, Michael Büsch wrote:
> > On Tue, 2 Dec 2014 23:01:29 +0300
> > Andrey Skvortsov <andrej.skvortzov at 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.skvortzov at 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.
> 
> I did a partial test with my PowerBook G4. With the patch installed, it would 
> both suspend and hibernate, but WOL would be impossible. This computer uses a 
> PCMCIA version of the BCM4318, and power is turned off to the PCMCIA card when 
> suspended or hibernating.

Thanks for testing.

John, can you take this one? Or do we need to split the b44 part out?
I added my Signed-off.

-- 
Michael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: b44_wol.patch
Type: text/x-patch
Size: 4270 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20141203/08d679b2/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20141203/08d679b2/attachment.sig>


More information about the b43-dev mailing list