diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-07-02 09:20:37 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-07-03 02:23:03 -0400 |
commit | 68cb2b559278858ef9f3a7722f95df88797c7840 (patch) | |
tree | 3dd568aac5e1004ffd1e8400aa5a50ca6a11ad01 /sound/pci/emu10k1/emu10k1.c | |
parent | 284e7ca75f96a18f182cce38ba76ee724fb97e16 (diff) |
ALSA: Convert to new pm_ops for PCI drivers
Straightforward conversion to the new pm_ops from the legacy
suspend/resume ops.
Since we change vx222, vx_core and vxpocket have to be converted,
too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/emu10k1/emu10k1.c')
-rw-r--r-- | sound/pci/emu10k1/emu10k1.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/sound/pci/emu10k1/emu10k1.c b/sound/pci/emu10k1/emu10k1.c index 7fdbbe4d9965..ddac4e6d660d 100644 --- a/sound/pci/emu10k1/emu10k1.c +++ b/sound/pci/emu10k1/emu10k1.c | |||
@@ -207,9 +207,10 @@ static void __devexit snd_card_emu10k1_remove(struct pci_dev *pci) | |||
207 | 207 | ||
208 | 208 | ||
209 | #ifdef CONFIG_PM | 209 | #ifdef CONFIG_PM |
210 | static int snd_emu10k1_suspend(struct pci_dev *pci, pm_message_t state) | 210 | static int snd_emu10k1_suspend(struct device *dev) |
211 | { | 211 | { |
212 | struct snd_card *card = pci_get_drvdata(pci); | 212 | struct pci_dev *pci = to_pci_dev(dev); |
213 | struct snd_card *card = dev_get_drvdata(dev); | ||
213 | struct snd_emu10k1 *emu = card->private_data; | 214 | struct snd_emu10k1 *emu = card->private_data; |
214 | 215 | ||
215 | snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); | 216 | snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); |
@@ -231,13 +232,14 @@ static int snd_emu10k1_suspend(struct pci_dev *pci, pm_message_t state) | |||
231 | 232 | ||
232 | pci_disable_device(pci); | 233 | pci_disable_device(pci); |
233 | pci_save_state(pci); | 234 | pci_save_state(pci); |
234 | pci_set_power_state(pci, pci_choose_state(pci, state)); | 235 | pci_set_power_state(pci, PCI_D3hot); |
235 | return 0; | 236 | return 0; |
236 | } | 237 | } |
237 | 238 | ||
238 | static int snd_emu10k1_resume(struct pci_dev *pci) | 239 | static int snd_emu10k1_resume(struct device *dev) |
239 | { | 240 | { |
240 | struct snd_card *card = pci_get_drvdata(pci); | 241 | struct pci_dev *pci = to_pci_dev(dev); |
242 | struct snd_card *card = dev_get_drvdata(dev); | ||
241 | struct snd_emu10k1 *emu = card->private_data; | 243 | struct snd_emu10k1 *emu = card->private_data; |
242 | 244 | ||
243 | pci_set_power_state(pci, PCI_D0); | 245 | pci_set_power_state(pci, PCI_D0); |
@@ -261,17 +263,21 @@ static int snd_emu10k1_resume(struct pci_dev *pci) | |||
261 | snd_power_change_state(card, SNDRV_CTL_POWER_D0); | 263 | snd_power_change_state(card, SNDRV_CTL_POWER_D0); |
262 | return 0; | 264 | return 0; |
263 | } | 265 | } |
264 | #endif | 266 | |
267 | static SIMPLE_DEV_PM_OPS(snd_emu10k1_pm, snd_emu10k1_suspend, snd_emu10k1_resume); | ||
268 | #define SND_EMU10K1_PM_OPS &snd_emu10k1_pm | ||
269 | #else | ||
270 | #define SND_EMU10K1_PM_OPS NULL | ||
271 | #endif /* CONFIG_PM */ | ||
265 | 272 | ||
266 | static struct pci_driver emu10k1_driver = { | 273 | static struct pci_driver emu10k1_driver = { |
267 | .name = KBUILD_MODNAME, | 274 | .name = KBUILD_MODNAME, |
268 | .id_table = snd_emu10k1_ids, | 275 | .id_table = snd_emu10k1_ids, |
269 | .probe = snd_card_emu10k1_probe, | 276 | .probe = snd_card_emu10k1_probe, |
270 | .remove = __devexit_p(snd_card_emu10k1_remove), | 277 | .remove = __devexit_p(snd_card_emu10k1_remove), |
271 | #ifdef CONFIG_PM | 278 | .driver = { |
272 | .suspend = snd_emu10k1_suspend, | 279 | .pm = SND_EMU10K1_PM_OPS, |
273 | .resume = snd_emu10k1_resume, | 280 | }, |
274 | #endif | ||
275 | }; | 281 | }; |
276 | 282 | ||
277 | module_pci_driver(emu10k1_driver); | 283 | module_pci_driver(emu10k1_driver); |