Skip to contentSkip to conversation

sonypi: Use struct dev_pm_ops for power management

PATCH In review Rafael J. Wysocki 2 participants 2 messages Jun 23, 2012 – Jun 27, 2012

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sonypi: Use struct dev_pm_ops for power management

From: Rafael J. Wysocki <[email protected]>

Make the sonypi driver define its PM callbacks through a struct dev_pm_ops object rather than by using legacy PM hooks in struct platform_driver.

---

Hi,

If there are no objections, I'd like to push this patch for 3.6 through the linux-pm tree.

Unfortunately, I don't have the hardware to test it, but I hope it is simple enough for code inspection to suffice.

Thanks,
Rafael

---
 drivers/char/sonypi.c |   13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)
drivers/char/sonypi.c +7 -6
Index: linux/drivers/char/sonypi.c
===================================================================
@@ -1459,7 +1459,7 @@ static int __devexit sonypi_remove(struc
 #ifdef CONFIG_PM
 static int old_camera_power;
 
-static int sonypi_suspend(struct platform_device *dev, pm_message_t state)
+static int sonypi_suspend(struct device *dev)
 {
 	old_camera_power = sonypi_device.camera_power;
 	sonypi_disable();
@@ -1467,14 +1467,16 @@ static int sonypi_suspend(struct platfor
 	return 0;
 }
 
-static int sonypi_resume(struct platform_device *dev)
+static int sonypi_resume(struct device *dev)
 {
 	sonypi_enable(old_camera_power);
 	return 0;
 }
+
+static SIMPLE_DEV_PM_OPS(sonypi_pm, sonypi_suspend, sonypi_resume);
+#define SONYPI_PM	(&sonypi_pm)
 #else
-#define sonypi_suspend	NULL
-#define sonypi_resume	NULL
+#define SONYPI_PM	NULL
 #endif
 
 static void sonypi_shutdown(struct platform_device *dev)
@@ -1486,12 +1488,11 @@ static struct platform_driver sonypi_dri
 	.driver		= {
 		.name	= "sonypi",
 		.owner	= THIS_MODULE,
+		.pm	= SONYPI_PM,
 	},
 	.probe		= sonypi_probe,
 	.remove		= __devexit_p(sonypi_remove),
 	.shutdown	= sonypi_shutdown,
-	.suspend	= sonypi_suspend,
-	.resume		= sonypi_resume,
 };
 
 static struct platform_device *sonypi_platform_device;
maintainer Acked-by on v1 1/1
#1 lore raw
Quoted 7 lines · Rafael J. Wysocki

From: Rafael J. Wysocki <[email protected]>

Make the sonypi driver define its PM callbacks through a struct dev_pm_ops object rather than by using legacy PM hooks in struct platform_driver.

Quoted 9 lines

---

Hi,

If there are no objections, I'd like to push this patch for 3.6 through the linux-pm tree.

Unfortunately, I don't have the hardware to test it, but I hope it is simple enough for code inspection to suffice.

It looks ok to me. I do have the hardware but it's very old, last time I booted that laptop is at least 5 years ago, not even sure it still boots actually.

I'll give it a go if I get the time but don't count too much on it so please include this in 3.6.

Thanks!

Signature · 2 lines
mattia
:wq!