summaryrefslogtreecommitdiffstats
path: root/sound/pci/ca0106
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-12-20 09:42:09 +0100
committerTakashi Iwai <tiwai@suse.de>2008-12-20 09:42:09 +0100
commit50232d62cace101e03f8f40ca151b978c0db5a0d (patch)
treed94273f28ebf0b4cbc3730c0c9a1a307ff31b987 /sound/pci/ca0106
parentALSA: ca0106 - Fix typo in resume code (diff)
downloadlinux-50232d62cace101e03f8f40ca151b978c0db5a0d.tar.xz
linux-50232d62cace101e03f8f40ca151b978c0db5a0d.zip
ALSA: ca0106 - Check ac97 availability at PM
Check the availability of ac97 at PM suspend/resume callbacks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/ca0106')
-rw-r--r--sound/pci/ca0106/ca0106_main.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/pci/ca0106/ca0106_main.c b/sound/pci/ca0106/ca0106_main.c
index 2c71f9b896cd..e01ecd3db324 100644
--- a/sound/pci/ca0106/ca0106_main.c
+++ b/sound/pci/ca0106/ca0106_main.c
@@ -1752,7 +1752,8 @@ static int snd_ca0106_suspend(struct pci_dev *pci, pm_message_t state)
snd_power_change_state(card, SNDRV_CTL_POWER_D3hot);
for (i = 0; i < 4; i++)
snd_pcm_suspend_all(chip->pcm[i]);
- snd_ac97_suspend(chip->ac97);
+ if (chip->details->ac97)
+ snd_ac97_suspend(chip->ac97);
snd_ca0106_mixer_suspend(chip);
ca0106_stop_chip(chip);
@@ -1781,7 +1782,8 @@ static int snd_ca0106_resume(struct pci_dev *pci)
ca0106_init_chip(chip, 1);
- snd_ac97_resume(chip->ac97);
+ if (chip->details->ac97)
+ snd_ac97_resume(chip->ac97);
snd_ca0106_mixer_resume(chip);
if (chip->details->spi_dac) {
for (i = 0; i < ARRAY_SIZE(chip->spi_dac_reg); i++)