ata: brcm: mark PM functions as __maybe_unused
authorArnd Bergmann <arnd@arndb.de>
Tue, 7 Jan 2020 22:14:59 +0000 (23:14 +0100)
committerJens Axboe <axboe@kernel.dk>
Fri, 17 Jan 2020 04:49:07 +0000 (21:49 -0700)
The new shutdown callback causes a link failure:

drivers/ata/ahci_brcm.c: In function 'brcm_ahci_shutdown':
drivers/ata/ahci_brcm.c:552:8: error: implicit declaration of function 'brcm_ahci_suspend'; did you mean 'brcm_ahci_shutdown'? [-Werror=implicit-function-declaration]
  ret = brcm_ahci_suspend(&pdev->dev);
        ^~~~~~~~~~~~~~~~~

Remove the incorrect #ifdef and use __maybe_unused annotations
instead to make this more robust.

Fixes: 7de9b1688c1d ("ata: ahci_brcm: Add a shutdown callback")
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/ata/ahci_brcm.c

index 13ceca68710435b4d256b9345044be003c0a0f7e..239333d11b88e956f907877f8bfb3775a4d6c44a 100644 (file)
@@ -338,7 +338,6 @@ static const struct ata_port_info ahci_brcm_port_info = {
        .port_ops       = &ahci_brcm_platform_ops,
 };
 
-#ifdef CONFIG_PM_SLEEP
 static int brcm_ahci_suspend(struct device *dev)
 {
        struct ata_host *host = dev_get_drvdata(dev);
@@ -348,7 +347,10 @@ static int brcm_ahci_suspend(struct device *dev)
 
        brcm_sata_phys_disable(priv);
 
-       ret = ahci_platform_suspend(dev);
+       if (IS_ENABLED(CONFIG_PM_SLEEP))
+               ret = ahci_platform_suspend(dev);
+       else
+               ret = 0;
 
        if (!IS_ERR_OR_NULL(priv->rcdev))
                reset_control_assert(priv->rcdev);
@@ -356,7 +358,7 @@ static int brcm_ahci_suspend(struct device *dev)
        return ret;
 }
 
-static int brcm_ahci_resume(struct device *dev)
+static int __maybe_unused brcm_ahci_resume(struct device *dev)
 {
        struct ata_host *host = dev_get_drvdata(dev);
        struct ahci_host_priv *hpriv = host->private_data;
@@ -405,7 +407,6 @@ out_disable_phys:
        ahci_platform_disable_clks(hpriv);
        return ret;
 }
-#endif
 
 static struct scsi_host_template ahci_platform_sht = {
        AHCI_SHT(DRV_NAME),