The power management code in pci-driver.c is a maze of #ifdefs, and the newly added pcie_pme_root_status_cleanup function ended up in the wrong one of them, causing a harmless warning in some configurations: drivers/pci/pci-driver.c:527:13: error: 'pcie_pme_root_status_cleanup' defined but not used [-Werror=unused-function] static void pcie_pme_root_status_cleanup(struct pci_dev *pci_dev) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ This moves the definition into the correct #ifdef section. Fixes: 6c4dfc1389e1 ("PCI/PM: Clear PCIe PME Status bit in core, not PCIe port driver") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> --- drivers/pci/pci-driver.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c index b9bca74e9eff..6ace47099fc5 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c @@ -524,19 +524,6 @@ static void pci_pm_default_resume_early(struct pci_dev *pci_dev) pci_fixup_device(pci_fixup_resume_early, pci_dev); } -static void pcie_pme_root_status_cleanup(struct pci_dev *pci_dev) -{ - /* - * Some BIOSes forget to clear Root PME Status bits after system - * wakeup, which breaks ACPI-based runtime wakeup on PCI Express. - * Clear those bits now just in case (shouldn't hurt). - */ - if (pci_is_pcie(pci_dev) && - (pci_pcie_type(pci_dev) == PCI_EXP_TYPE_ROOT_PORT || - pci_pcie_type(pci_dev) == PCI_EXP_TYPE_RC_EC)) - pcie_clear_root_pme_status(pci_dev); -} - /* * Default "suspend" method for devices that have no driver provided suspend, * or not even a driver at all (second part). @@ -726,6 +713,18 @@ static void pci_pm_complete(struct device *dev) #endif /* !CONFIG_PM_SLEEP */ #ifdef CONFIG_SUSPEND +static void pcie_pme_root_status_cleanup(struct pci_dev *pci_dev) +{ + /* + * Some BIOSes forget to clear Root PME Status bits after system + * wakeup, which breaks ACPI-based runtime wakeup on PCI Express. + * Clear those bits now just in case (shouldn't hurt). + */ + if (pci_is_pcie(pci_dev) && + (pci_pcie_type(pci_dev) == PCI_EXP_TYPE_ROOT_PORT || + pci_pcie_type(pci_dev) == PCI_EXP_TYPE_RC_EC)) + pcie_clear_root_pme_status(pci_dev); +} static int pci_pm_suspend(struct device *dev) { -- 2.9.0