Re: [RFC][PATCH 3/4] PCI / ACPI PM: Platform support for PCI PMEwake-up (rev. 2)

From: Matthew Garrett
Date: Fri Oct 09 2009 - 07:24:52 EST


On Fri, Oct 09, 2009 at 12:54:18AM +0200, Rafael J. Wysocki wrote:

> Unfortunately, the subset of PCI devices that have GPEs associated
> with them is quite limited and the other devices have to rely on
> the GPEs associated with their upstream bridges and, possibly, the
> root bridge to generate ACPI wake-up events in response to PMEs from
> them. Moreover, ACPI devices tend to share wake-up GPEs, in which
> cases it makes sense to install an ACPI notify handler for only one
> of them and "bind" the other devices to it. Furthermore, ACPI-based
> PCI hotplug also uses ACPI notify handlers that in general may
> conflict with the PM notify handlers, unless this issue is
> specifically taken care of.

I'm not sure this approach is correct - for instance, from a Dell
system:

Method (_L0D, 0, NotSerialized)
{
Store (SMI (0xC6, 0x00), Local0)
If (And (Local0, 0x01))
{
Notify (\_SB.PCI0.AZAL, 0x02)
}

If (And (Local0, 0x02))
{
Notify (\_SB.PCI0.EHCI, 0x02)
}

If (And (Local0, 0x04))
{
Notify (\_SB.PCI0.EHC2, 0x02)
}
}

All these devices share a GPE, but registering only one notify handler
would result in us missing the notification in some cases. I also
suspect that this should wait until the GPE rework is done.

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/