summaryrefslogtreecommitdiffstats
path: root/sound/drivers/aloop.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-07-19 08:21:40 +0200
committerTakashi Iwai <tiwai@suse.de>2012-07-19 08:21:57 +0200
commit1558eb838ff502faafacf26b6a711dbaae796009 (patch)
tree8049ea20a214033369725ed58b8b4a3ca4110887 /sound/drivers/aloop.c
parent4609ed6b1f0ab9f11a9d0361573b53d9d057c440 (diff)
parent81fcb170852d58d7ebd8101a8ef970c82056426e (diff)
downloadop-kernel-dev-1558eb838ff502faafacf26b6a711dbaae796009.zip
op-kernel-dev-1558eb838ff502faafacf26b6a711dbaae796009.tar.gz
Merge branch 'topic/pm-convert' into for-next
This merges the changes for converting to new PM ops for platform and some other drivers. Also move some header files to local places from the public include/sound.
Diffstat (limited to 'sound/drivers/aloop.c')
-rw-r--r--sound/drivers/aloop.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/sound/drivers/aloop.c b/sound/drivers/aloop.c
index 8b5c36f..1128b35 100644
--- a/sound/drivers/aloop.c
+++ b/sound/drivers/aloop.c
@@ -1177,10 +1177,9 @@ static int __devexit loopback_remove(struct platform_device *devptr)
}
#ifdef CONFIG_PM
-static int loopback_suspend(struct platform_device *pdev,
- pm_message_t state)
+static int loopback_suspend(struct device *pdev)
{
- struct snd_card *card = platform_get_drvdata(pdev);
+ struct snd_card *card = dev_get_drvdata(pdev);
struct loopback *loopback = card->private_data;
snd_power_change_state(card, SNDRV_CTL_POWER_D3hot);
@@ -1190,13 +1189,18 @@ static int loopback_suspend(struct platform_device *pdev,
return 0;
}
-static int loopback_resume(struct platform_device *pdev)
+static int loopback_resume(struct device *pdev)
{
- struct snd_card *card = platform_get_drvdata(pdev);
+ struct snd_card *card = dev_get_drvdata(pdev);
snd_power_change_state(card, SNDRV_CTL_POWER_D0);
return 0;
}
+
+static SIMPLE_DEV_PM_OPS(loopback_pm, loopback_suspend, loopback_resume);
+#define LOOPBACK_PM_OPS &loopback_pm
+#else
+#define LOOPBACK_PM_OPS NULL
#endif
#define SND_LOOPBACK_DRIVER "snd_aloop"
@@ -1204,12 +1208,10 @@ static int loopback_resume(struct platform_device *pdev)
static struct platform_driver loopback_driver = {
.probe = loopback_probe,
.remove = __devexit_p(loopback_remove),
-#ifdef CONFIG_PM
- .suspend = loopback_suspend,
- .resume = loopback_resume,
-#endif
.driver = {
- .name = SND_LOOPBACK_DRIVER
+ .name = SND_LOOPBACK_DRIVER,
+ .owner = THIS_MODULE,
+ .pm = LOOPBACK_PM_OPS,
},
};
OpenPOWER on IntegriCloud