cw1200: Fix suspend
authorLars-Peter Clausen <lars@metafoo.de>
Sun, 15 Mar 2015 13:26:20 +0000 (14:26 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 20 Mar 2015 06:30:32 +0000 (08:30 +0200)
The cw1200 driver implements suspend and resume callbacks and assigns them
to the suspend and resume fields of the device_driver struct. These
callbacks are never actually called by anything though.

Modify the driver to properly use dev_pm_ops so that the suspend function
is actually executed upon suspend and drop the empty resume function.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/cw1200/cw1200_spi.c

index 964b64a..7603546 100644 (file)
@@ -447,7 +447,7 @@ static int cw1200_spi_disconnect(struct spi_device *func)
 }
 
 #ifdef CONFIG_PM
-static int cw1200_spi_suspend(struct device *dev, pm_message_t state)
+static int cw1200_spi_suspend(struct device *dev)
 {
        struct hwbus_priv *self = spi_get_drvdata(to_spi_device(dev));
 
@@ -458,10 +458,8 @@ static int cw1200_spi_suspend(struct device *dev, pm_message_t state)
        return 0;
 }
 
-static int cw1200_spi_resume(struct device *dev)
-{
-       return 0;
-}
+static SIMPLE_DEV_PM_OPS(cw1200_pm_ops, cw1200_spi_suspend, NULL);
+
 #endif
 
 static struct spi_driver spi_driver = {
@@ -472,8 +470,7 @@ static struct spi_driver spi_driver = {
                .bus            = &spi_bus_type,
                .owner          = THIS_MODULE,
 #ifdef CONFIG_PM
-               .suspend        = cw1200_spi_suspend,
-               .resume         = cw1200_spi_resume,
+               .pm             = &cw1200_pm_ops,
 #endif
        },
 };