[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091009112320.GA23990@srcf.ucam.org>
Date: Fri, 9 Oct 2009 12:23:20 +0100
From: Matthew Garrett <mjg59@...f.ucam.org>
To: "Rafael J. Wysocki" <rjw@...k.pl>
Cc: Linux PCI <linux-pci@...r.kernel.org>,
pm list <linux-pm@...ts.linux-foundation.org>,
Jesse Barnes <jbarnes@...tuousgeek.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Alan Stern <stern@...land.harvard.edu>,
Shaohua Li <shaohua.li@...el.com>,
Bjorn Helgaas <bjorn.helgaas@...com>
Subject: Re: [RFC][PATCH 3/4] PCI / ACPI PM: Platform support for PCI PME
wake-up (rev. 2)
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@...f.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists