Re: [PATCH] mmc: sdhci-omap: Fix build if CONFIG_PM_SLEEP is not set

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 21 Oct 2021 at 15:43, Tony Lindgren <tony@xxxxxxxxxxx> wrote:
>
> Commit f433e8aac6b9 ("mmc: sdhci-omap: Implement PM runtime functions")
> combined the use of runtime PM and system suspend functions but left the
> ifdef CONFIG_PM_SLEEP in place causing undeclared identifier error for
> sdhci_omap_runtime_suspend if CONFIG_PM_SLEEP is not enabled.
>
> Let's fix the error by removing ifdef CONFIG_PM_SLEEP and tagging the
> reset of the PM related functions with __maybe_unused.
>
> Let's also remove the forward declaration for sdhci_omap_context_save(),
> that was accidentally left from an earlier version and is no longer used.
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
> ---
>  drivers/mmc/host/sdhci-omap.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-omap.c b/drivers/mmc/host/sdhci-omap.c
> --- a/drivers/mmc/host/sdhci-omap.c
> +++ b/drivers/mmc/host/sdhci-omap.c
> @@ -1210,8 +1210,6 @@ static const struct soc_device_attribute sdhci_omap_soc_devices[] = {
>         }
>  };
>
> -static void sdhci_omap_context_save(struct sdhci_omap_host *omap_host);
> -
>  static int sdhci_omap_probe(struct platform_device *pdev)
>  {
>         int ret;
> @@ -1417,8 +1415,8 @@ static int sdhci_omap_remove(struct platform_device *pdev)
>
>         return 0;
>  }
> -#ifdef CONFIG_PM_SLEEP

This above should be:
#ifdef CONFIG_PM

sdhci_runtime_suspend|resume() host is defined like this as well, so
the below would trigger a compiler error when built with CONFIG_PM
unset.

> -static void sdhci_omap_context_save(struct sdhci_omap_host *omap_host)
> +
> +static void __maybe_unused sdhci_omap_context_save(struct sdhci_omap_host *omap_host)
>  {
>         omap_host->con = sdhci_omap_readl(omap_host, SDHCI_OMAP_CON);
>         omap_host->hctl = sdhci_omap_readl(omap_host, SDHCI_OMAP_HCTL);
> @@ -1429,7 +1427,7 @@ static void sdhci_omap_context_save(struct sdhci_omap_host *omap_host)
>  }
>
>  /* Order matters here, HCTL must be restored in two phases */
> -static void sdhci_omap_context_restore(struct sdhci_omap_host *omap_host)
> +static void __maybe_unused sdhci_omap_context_restore(struct sdhci_omap_host *omap_host)
>  {
>         sdhci_omap_writel(omap_host, SDHCI_OMAP_HCTL, omap_host->hctl);
>         sdhci_omap_writel(omap_host, SDHCI_OMAP_CAPA, omap_host->capa);
> @@ -1471,7 +1469,6 @@ static int __maybe_unused sdhci_omap_runtime_resume(struct device *dev)
>
>         return 0;
>  }
> -#endif
>
>  static const struct dev_pm_ops sdhci_omap_dev_pm_ops = {
>         SET_RUNTIME_PM_OPS(sdhci_omap_runtime_suspend,

Kind regards
Uffe



[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux