hp_accel: Use struct dev_pm_ops for power management

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

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reviewed-by: Éric Piel <eric.piel@tremplin-utc.net>
This commit is contained in:
Rafael J. Wysocki 2012-06-27 23:27:25 +02:00
parent 43d2fd3b9d
commit 4ce05b4260

View file

@ -353,20 +353,22 @@ static int lis3lv02d_remove(struct acpi_device *device, int type)
#ifdef CONFIG_PM
static int lis3lv02d_suspend(struct acpi_device *device)
static int lis3lv02d_suspend(struct device *dev)
{
/* make sure the device is off when we suspend */
lis3lv02d_poweroff(&lis3_dev);
return 0;
}
static int lis3lv02d_resume(struct acpi_device *device)
static int lis3lv02d_resume(struct device *dev)
{
return lis3lv02d_poweron(&lis3_dev);
}
static SIMPLE_DEV_PM_OPS(hp_accel_pm, lis3lv02d_suspend, lis3lv02d_resume);
#define HP_ACCEL_PM (&hp_accel_pm)
#else
#define lis3lv02d_suspend NULL
#define lis3lv02d_resume NULL
#define HP_ACCEL_PM NULL
#endif
/* For the HP MDPS aka 3D Driveguard */
@ -377,9 +379,8 @@ static struct acpi_driver lis3lv02d_driver = {
.ops = {
.add = lis3lv02d_add,
.remove = lis3lv02d_remove,
.suspend = lis3lv02d_suspend,
.resume = lis3lv02d_resume,
}
},
.drv.pm = HP_ACCEL_PM,
};
static int __init lis3lv02d_init_module(void)