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

Rafael J. Wysocki
2012-06-24T19:55:09Z

On Sunday, June 24, 2012, Vikram Dhillon wrote:
> On Sat, Jun 23, 2012 at 5:18 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> > From: Rafael J. Wysocki <rjw@sisk.pl>
> >
> > 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)
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
>
> Looks good, will look into the other struct patch (#11) tomorrow.
>
> Reviewed-by: Vikram Dhillon <opensolarisdev@gmail.com>

Thanks a lot!

Rafael