• Rafael J. Wysocki's avatar
    PCI / PM: Disable wakeup during shutdown for devices not enabled to wake up · 5b415f1e
    Rafael J. Wysocki authored
    If a PCI device is enabled to generate wakeup signals (PME) when put
    into a low-power state by runtime PM, it will be still enabled to
    generate those signals after the system shutdown, unless its driver's
    .shutdown() callback takes care of the wakeup signals generation
    setting.  Moreover, there are devices that are not enabled to wake
    up the system and that are configured by runtime PM to generate
    wakeup signals so that (runtime) remote wakeup works with them.
    Those devices should be reconfigured during system shutdown so that
    they don't generate wakeup signals, but at least some drivers don't
    do that.  However, that very well may be done by the PCI core so
    that drivers don't have to worry about it.  For this reason, modify
    pci_device_shutdown() to disable the generation of wakeup events for
    devices not supposed to wake up the system.
    
    References: https://bugzilla.kernel.org/show_bug.cgi?id=37952Reported-and-tested-by: default avatarKamil Iskra <kamil.54002@iskra.name>
    Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
    Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
    5b415f1e
pci-driver.c 31.1 KB