[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100106140414.6d03cef1@jbarnes-piketon>
Date: Wed, 6 Jan 2010 14:04:14 -0800
From: Jesse Barnes <jbarnes@...tuousgeek.org>
To: "Rafael J. Wysocki" <rjw@...k.pl>
Cc: Matthew Garrett <mjg@...hat.com>, Len Brown <lenb@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
pm list <linux-pm@...ts.linux-foundation.org>,
Alan Stern <stern@...land.harvard.edu>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
Linux PCI <linux-pci@...r.kernel.org>,
Oliver Neukum <oliver@...kum.org>,
Bjorn Helgaas <bjorn.helgaas@...com>,
Shaohua Li <shaohua.li@...el.com>,
Francois Romieu <romieu@...zoreil.com>
Subject: Re: [PATCH 10/12] PCI / ACPI / PM: Platform support for PCI PME
wake-up (rev. 6)
On Sun, 27 Dec 2009 21:07:36 +0100
"Rafael J. Wysocki" <rjw@...k.pl> wrote:
> From: Rafael J. Wysocki <rjw@...k.pl>
>
> Although the majority of PCI devices can generate PMEs that in
> principle may be used to wake up devices suspended at run time,
> platform support is generally necessary to convert PMEs into wake-up
> events that can be delivered to the kernel. If ACPI is used for this
> purpose, a PME generated by a PCI device will trigger the ACPI GPE
> associated with the device to generate an ACPI wake-up event that we
> can set up a handler for, provided that everything is configured
> correctly.
>
> 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-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.
>
> Add ACPI platform support for PCI PME wake-up:
> o Add a framework making is possible to use ACPI system notify
> handlers for both PM and hotplug at the same time and to take the
> wake-up GPE sharing into account.
> o Add new PCI platform callback ->run_wake() to struct
> pci_platform_pm_ops allowing us to enable/disable the platform to
> generate wake-up events for given device. Implemet this callback
> for the ACPI platform.
> o Define ACPI wake-up handlers for PCI devices and PCI buses and make
> the PCI-ACPI binding code register wake-up notifiers for devices
> associated with wake-up GPEs.
> o Add function pci_dev_run_wake() which can be used by PCI drivers to
> check if given device is capable of generating wake-up events at
> run time.
>
> Developed in cooperation with Matthew Garrett <mjg@...hat.com>.
>
> Signed-off-by: Rafael J. Wysocki <rjw@...k.pl>
Looks pretty good, though my comment about the bool taking functions
applies here too.
--
Jesse Barnes, Intel Open Source Technology Center
--
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