Thus wrote Adam Belay:
> > Note also that there are very few explicit calls to pci_enable_wake() in
> > the whole tree. Linux doesn't set the PME-Enable bit properly, which
> > apparently results in WOL either working or not working. My understanding
> > is that the final outcome depends on what BIOS does to the card during
> > POST. Please see http://bugme.osdl.org/show_bug.cgi?id=3801 for a weird 
> > example.
> I'm in the process of overhauling the PCI layer's power management event
> support.  Basically, I'd like to catch ACPI GPE events and then walk the
> device tree in thier corresponding location to see if PME is set.  If so

Ouch. Registering a notify handler against the device's node is not enough?
AFAIR, the spec requires devices that triggered wake-up to be notified and
most DSDTs I've seen do it in one way or another (usually through _WAK).

> a function like ->wake() will be called for the device driver that owns
> the triggered device.  This should allow for even runtime PME usage.  I'm
> expecting to have a patch available for the PCI end of these changes soon.

What point is calling this when we're already up?

Obviously, I haven't seen the whole picture, but from what I know we
already have a .enable_wake callback that is ignored by both the core code
and the drivers. Perhaps extending this callback with platform hooks to
enable the corresponding GPE (die, /proc/acpi/wakeup, die!) and making sure
it actually is called would suffice?

Best regards,

-- 
Karol 'sziwan' Kozimor
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to