On Sun, 27 Dec 2009 21:01:24 +0100 "Rafael J. Wysocki" <rjw@xxxxxxx> wrote: > From: Rafael J. Wysocki <rjw@xxxxxxx> > > PCIe native PME detection mechanism is based on interrupts generated > by root ports or event collectors every time a PCIe device sends a > PME message upstream. > > Once a PME message has been sent by an endpoint device and received > by its root port (or event collector in the case of root complex > integrated endpoints), the Requester ID from the message header is > registered in the root port's Root Status register. At the same > time, the PME Status bit of the Root Status register is set to > indicate that there's a PME to handle. If PCIe PME interrupt is > enabled for the root port, it generates an interrupt once the PME > Status has been set. After receiving the interrupt, the kernel can > identify the PCIe device that generated the PME using the Requester > ID from the root port's Root Status register. [For details, see PCI > Express Base Specification, Rev. 2.0.] > > Implement a driver for the PCIe PME root port service working in > accordance with the above description. > > Based on a patch from Shaohua Li <shaohua.li@xxxxxxxxx>. This one looks pretty nice. -- Jesse Barnes, Intel Open Source Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html