X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=sound%2Faoa%2Ffabrics%2Flayout.c;h=8f71f7e4d96604915d837df191eebfa5bd6c2414;hb=36aea585a1103b8c2a1de04637b8a4326b92c254;hp=9dc5806d23dd51134b90fb0f8c0966a0588ccd6c;hpb=b7d3622a39fde7658170b7f3cf6c6889bb8db30d;p=deliverable%2Flinux.git diff --git a/sound/aoa/fabrics/layout.c b/sound/aoa/fabrics/layout.c index 9dc5806d23dd..8f71f7e4d966 100644 --- a/sound/aoa/fabrics/layout.c +++ b/sound/aoa/fabrics/layout.c @@ -1120,10 +1120,10 @@ static int aoa_fabric_layout_remove(struct soundbus_dev *sdev) return 0; } -#ifdef CONFIG_PM -static int aoa_fabric_layout_suspend(struct soundbus_dev *sdev, pm_message_t state) +#ifdef CONFIG_PM_SLEEP +static int aoa_fabric_layout_suspend(struct device *dev) { - struct layout_dev *ldev = dev_get_drvdata(&sdev->ofdev.dev); + struct layout_dev *ldev = dev_get_drvdata(dev); if (ldev->gpio.methods && ldev->gpio.methods->all_amps_off) ldev->gpio.methods->all_amps_off(&ldev->gpio); @@ -1131,15 +1131,19 @@ static int aoa_fabric_layout_suspend(struct soundbus_dev *sdev, pm_message_t sta return 0; } -static int aoa_fabric_layout_resume(struct soundbus_dev *sdev) +static int aoa_fabric_layout_resume(struct device *dev) { - struct layout_dev *ldev = dev_get_drvdata(&sdev->ofdev.dev); + struct layout_dev *ldev = dev_get_drvdata(dev); if (ldev->gpio.methods && ldev->gpio.methods->all_amps_restore) ldev->gpio.methods->all_amps_restore(&ldev->gpio); return 0; } + +static SIMPLE_DEV_PM_OPS(aoa_fabric_layout_pm_ops, + aoa_fabric_layout_suspend, aoa_fabric_layout_resume); + #endif static struct soundbus_driver aoa_soundbus_driver = { @@ -1147,12 +1151,11 @@ static struct soundbus_driver aoa_soundbus_driver = { .owner = THIS_MODULE, .probe = aoa_fabric_layout_probe, .remove = aoa_fabric_layout_remove, -#ifdef CONFIG_PM - .suspend = aoa_fabric_layout_suspend, - .resume = aoa_fabric_layout_resume, -#endif .driver = { .owner = THIS_MODULE, +#ifdef CONFIG_PM_SLEEP + .pm = &aoa_fabric_layout_pm_ops, +#endif } };