2022-04-21 09:08:42

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH] PCI: fix unused pci_restore_standard_config without suspend/hibernate

The pci_restore_standard_config() is called only by functions within
CONFIG_SUSPEND or CONFIG_HIBERNATION, so a configuration with only PM
leads to a warning:

drivers/pci/pci-driver.c:533:12: error: ‘pci_restore_standard_config’ defined but not used [-Werror=unused-function]

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/pci/pci-driver.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
index dc18c1faf5e5..a2e6aabfa324 100644
--- a/drivers/pci/pci-driver.c
+++ b/drivers/pci/pci-driver.c
@@ -522,9 +522,9 @@ static void pci_device_shutdown(struct device *dev)
pci_clear_master(pci_dev);
}

-#ifdef CONFIG_PM
+#ifdef CONFIG_PM_SLEEP

-/* Auxiliary functions used for system resume and run-time resume. */
+/* Auxiliary functions used for system resume. */

/**
* pci_restore_standard_config - restore standard config registers of PCI device
@@ -544,6 +544,11 @@ static int pci_restore_standard_config(struct pci_dev *pci_dev)
pci_pme_restore(pci_dev);
return 0;
}
+#endif /* CONFIG_PM_SLEEP */
+
+#ifdef CONFIG_PM
+
+/* Auxiliary functions used for system resume and run-time resume. */

static void pci_pm_default_resume(struct pci_dev *pci_dev)
{
@@ -558,8 +563,7 @@ static void pci_pm_default_resume_early(struct pci_dev *pci_dev)
pci_restore_state(pci_dev);
pci_pme_restore(pci_dev);
}
-
-#endif
+#endif /* CONFIG_PM */

#ifdef CONFIG_PM_SLEEP

--
2.32.0


2022-04-22 19:01:44

by Bjorn Helgaas

[permalink] [raw]
Subject: Re: [PATCH] PCI: fix unused pci_restore_standard_config without suspend/hibernate

On Wed, Apr 20, 2022 at 04:11:35PM +0200, Krzysztof Kozlowski wrote:
> The pci_restore_standard_config() is called only by functions within
> CONFIG_SUSPEND or CONFIG_HIBERNATION, so a configuration with only PM
> leads to a warning:
>
> drivers/pci/pci-driver.c:533:12: error: ‘pci_restore_standard_config’ defined but not used [-Werror=unused-function]
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Applied to pci/pm for v5.19, thanks!

> ---
> drivers/pci/pci-driver.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
> index dc18c1faf5e5..a2e6aabfa324 100644
> --- a/drivers/pci/pci-driver.c
> +++ b/drivers/pci/pci-driver.c
> @@ -522,9 +522,9 @@ static void pci_device_shutdown(struct device *dev)
> pci_clear_master(pci_dev);
> }
>
> -#ifdef CONFIG_PM
> +#ifdef CONFIG_PM_SLEEP
>
> -/* Auxiliary functions used for system resume and run-time resume. */
> +/* Auxiliary functions used for system resume. */
>
> /**
> * pci_restore_standard_config - restore standard config registers of PCI device
> @@ -544,6 +544,11 @@ static int pci_restore_standard_config(struct pci_dev *pci_dev)
> pci_pme_restore(pci_dev);
> return 0;
> }
> +#endif /* CONFIG_PM_SLEEP */
> +
> +#ifdef CONFIG_PM
> +
> +/* Auxiliary functions used for system resume and run-time resume. */
>
> static void pci_pm_default_resume(struct pci_dev *pci_dev)
> {
> @@ -558,8 +563,7 @@ static void pci_pm_default_resume_early(struct pci_dev *pci_dev)
> pci_restore_state(pci_dev);
> pci_pme_restore(pci_dev);
> }
> -
> -#endif
> +#endif /* CONFIG_PM */
>
> #ifdef CONFIG_PM_SLEEP
>
> --
> 2.32.0
>