X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=sound%2Fdrivers%2Faloop.c;h=1128b35b2b05f47fc2c5783a16a10e9e26b9de29;hb=284e7ca75f96a18f182cce38ba76ee724fb97e16;hp=3484411bd5e65f1107ec5f217607bd05d9bbf793;hpb=8bf01d8abc55eaf8e19a2d48911c8e49ee6f5bab;p=deliverable%2Flinux.git diff --git a/sound/drivers/aloop.c b/sound/drivers/aloop.c index 3484411bd5e6..1128b35b2b05 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,13 +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, .owner = THIS_MODULE, + .pm = LOOPBACK_PM_OPS, }, };