[Linux-kernel-mentees] [PATCH v4 20/29] scsi: hpsa: use generic power management

Don.Brace at microchip.com Don.Brace at microchip.com
Wed Nov 4 18:08:32 UTC 2020


-----Original Message-----

Switch to the new generic framework by updating function signatures and define a "struct dev_pm_ops" variable to bind PM callbacks. Also, remove unnecessary calls to the PCI Helper functions along with the legacy .suspend & .resume bindings.

Signed-off-by: Vaibhav Gupta <vaibhavgupta40 at gmail.com>

Acked-by: Don Brace <don.brace at microchip.com>

I thought that I had given my Acked-by on 10/27, but it must have been lost.

Thanks for your attention to hpsa,
Don
---
 drivers/scsi/hpsa.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c index 83ce4f11a589..e53364141fa3 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -9090,25 +9090,27 @@ static void hpsa_remove_one(struct pci_dev *pdev)
        hpda_free_ctlr_info(h);                         /* init_one 1 */
 }

-static int hpsa_suspend(__attribute__((unused)) struct pci_dev *pdev,
-       __attribute__((unused)) pm_message_t state)
+static int __maybe_unused hpsa_suspend(
+       __attribute__((unused)) struct device *dev)
 {
        return -ENOSYS;
 }

-static int hpsa_resume(__attribute__((unused)) struct pci_dev *pdev)
+static int __maybe_unused hpsa_resume
+       (__attribute__((unused)) struct device *dev)
 {
        return -ENOSYS;
 }

+static SIMPLE_DEV_PM_OPS(hpsa_pm_ops, hpsa_suspend, hpsa_resume);
+
 static struct pci_driver hpsa_pci_driver = {
        .name = HPSA,
        .probe = hpsa_init_one,
        .remove = hpsa_remove_one,
        .id_table = hpsa_pci_device_id, /* id_table */
        .shutdown = hpsa_shutdown,
-       .suspend = hpsa_suspend,
-       .resume = hpsa_resume,
+       .driver.pm = &hpsa_pm_ops,
 };

 /* Fill in bucket_map[], given nsgs (the max number of
--
2.28.0



More information about the Linux-kernel-mentees mailing list