[PATCH 16/21] toshiba_bluetooth: Use struct dev_pm_ops for power management

Rafael J. Wysocki
2012-06-23T21:18:17Z

Make the toshiba_bluetooth 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>
---
drivers/platform/x86/toshiba_bluetooth.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)

Index: linux/drivers/platform/x86/toshiba_bluetooth.c
===================================================================
--- linux.orig/drivers/platform/x86/toshiba_bluetooth.c
+++ linux/drivers/platform/x86/toshiba_bluetooth.c
@@ -34,7 +34,6 @@ MODULE_LICENSE("GPL");
static int toshiba_bt_rfkill_add(struct acpi_device *device);
static int toshiba_bt_rfkill_remove(struct acpi_device *device, int type);
static void toshiba_bt_rfkill_notify(struct acpi_device *device, u32 event);
-static int toshiba_bt_resume(struct acpi_device *device);

static const struct acpi_device_id bt_device_ids[] = {
{ "TOS6205", 0},
@@ -42,6 +41,9 @@ static const struct acpi_device_id bt_de
};
MODULE_DEVICE_TABLE(acpi, bt_device_ids);

+static int toshiba_bt_resume(struct device *dev);
+static SIMPLE_DEV_PM_OPS(toshiba_bt_pm, NULL, toshiba_bt_resume);
+
static struct acpi_driver toshiba_bt_rfkill_driver = {
.name = "Toshiba BT",
.class = "Toshiba",
@@ -50,9 +52,9 @@ static struct acpi_driver toshiba_bt_rfk
.add = toshiba_bt_rfkill_add,
.remove = toshiba_bt_rfkill_remove,
.notify = toshiba_bt_rfkill_notify,
- .resume = toshiba_bt_resume,
},
.owner = THIS_MODULE,
+ .drv.pm = &toshiba_bt_pm,
};

@@ -88,9 +90,9 @@ static void toshiba_bt_rfkill_notify(str
toshiba_bluetooth_enable(device->handle);
}

-static int toshiba_bt_resume(struct acpi_device *device)
+static int toshiba_bt_resume(struct device *dev)
{
- return toshiba_bluetooth_enable(device->handle);
+ return toshiba_bluetooth_enable(to_acpi_device(dev)->handle);
}

static int toshiba_bt_rfkill_add(struct acpi_device *device)