aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/als300.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-01-08 06:43:46 -0500
committerTakashi Iwai <tiwai@suse.de>2015-01-09 10:24:18 -0500
commit08aa0e34305059a80f38e039f085fe91a7587cca (patch)
treef328a46239f2e286595fbfb60ed9fdc9d11a8183 /sound/pci/als300.c
parentc4eaa62fdac3cdbf358e19625477ffc9a15d4c7b (diff)
ALSA: als300: Simplify PM callbacks
This is a similar cleanup like the commit [3db084fd0af5: ALSA: fm801: PCI core handles power state for us]. Since pci_set_power_state(), pci_save_state() and pci_restore_state() are already done in the PCI core side, so we don't need to it doubly. Also, pci_enable_device(), pci_disable_device() and pci_set_master() calls in PM callbacks are superfluous nowadays, too, so get rid of them as well. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/als300.c')
-rw-r--r--sound/pci/als300.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/sound/pci/als300.c b/sound/pci/als300.c
index 7bb6ac565107..bd01113de39a 100644
--- a/sound/pci/als300.c
+++ b/sound/pci/als300.c
@@ -728,35 +728,20 @@ static int snd_als300_create(struct snd_card *card,
728#ifdef CONFIG_PM_SLEEP 728#ifdef CONFIG_PM_SLEEP
729static int snd_als300_suspend(struct device *dev) 729static int snd_als300_suspend(struct device *dev)
730{ 730{
731 struct pci_dev *pci = to_pci_dev(dev);
732 struct snd_card *card = dev_get_drvdata(dev); 731 struct snd_card *card = dev_get_drvdata(dev);
733 struct snd_als300 *chip = card->private_data; 732 struct snd_als300 *chip = card->private_data;
734 733
735 snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); 734 snd_power_change_state(card, SNDRV_CTL_POWER_D3hot);
736 snd_pcm_suspend_all(chip->pcm); 735 snd_pcm_suspend_all(chip->pcm);
737 snd_ac97_suspend(chip->ac97); 736 snd_ac97_suspend(chip->ac97);
738
739 pci_disable_device(pci);
740 pci_save_state(pci);
741 pci_set_power_state(pci, PCI_D3hot);
742 return 0; 737 return 0;
743} 738}
744 739
745static int snd_als300_resume(struct device *dev) 740static int snd_als300_resume(struct device *dev)
746{ 741{
747 struct pci_dev *pci = to_pci_dev(dev);
748 struct snd_card *card = dev_get_drvdata(dev); 742 struct snd_card *card = dev_get_drvdata(dev);
749 struct snd_als300 *chip = card->private_data; 743 struct snd_als300 *chip = card->private_data;
750 744
751 pci_set_power_state(pci, PCI_D0);
752 pci_restore_state(pci);
753 if (pci_enable_device(pci) < 0) {
754 dev_err(dev, "pci_enable_device failed, disabling device\n");
755 snd_card_disconnect(card);
756 return -EIO;
757 }
758 pci_set_master(pci);
759
760 snd_als300_init(chip); 745 snd_als300_init(chip);
761 snd_ac97_resume(chip->ac97); 746 snd_ac97_resume(chip->ac97);
762 747