On Fri, Aug 21, 2009 at 05:22:02AM +0800, Rafael J. Wysocki wrote: > On Wednesday 19 August 2009, Shaohua Li wrote: > > > > PCIe defines a native PME detection mechanism. When a PCIe endpoint > > invokes PME, PCIe root port has a set of regisets to detect the > > endpoint's bus/device/function number and root port will send out > > interrupt when PME is received. After getting interrupt, OS can identify > > which device invokes PME according to such information. See PCIe > > spec for detail. This patch implements this feature. > > > > --- > > drivers/pci/pcie/Kconfig | 7 + > > drivers/pci/pcie/Makefile | 2 > > drivers/pci/pcie/npme.c | 300 ++++++++++++++++++++++++++++++++++++++++++++++ > > include/linux/pci_regs.h | 1 > > 4 files changed, 310 insertions(+) > > > > Index: linux/drivers/pci/pcie/Kconfig > > =================================================================== > > --- linux.orig/drivers/pci/pcie/Kconfig 2009-08-19 13:43:18.000000000 +0800 > > +++ linux/drivers/pci/pcie/Kconfig 2009-08-19 14:34:00.000000000 +0800 > > @@ -46,3 +46,10 @@ config PCIEASPM_DEBUG > > help > > This enables PCI Express ASPM debug support. It will add per-device > > interface to control ASPM. > > + > > +config PCIENPME > > + bool "PCIE Native PME support(Experimental)" > > + depends on PCIEPORTBUS && EXPERIMENTAL > > + help > > + This enables PCI Express Native PME Reporting. > > I don't really think we need that. Or maybe. But I'd prefer to call it > PCIE_PME. It definitely is required if you ever looked at PCIe spec. In my test machine, the e1000 card can send such event, and the root port can collect it. I'm going to fix some issues you pointed out. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html