summaryrefslogtreecommitdiff
path: root/sound/pci/ens1370.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2006-01-12 13:43:49 +0300
committerJaroslav Kysela <perex@suse.cz>2006-03-22 12:22:42 +0300
commit15f500a6994e552b7772d8b8459ee3114c47897d (patch)
treee631b66e2bf95d9834c02a283d6fb0ccb2d61ffd /sound/pci/ens1370.c
parent9568f461e50c023e45ec702027bb1a5f60e443dc (diff)
downloadlinux-15f500a6994e552b7772d8b8459ee3114c47897d.tar.xz
[ALSA] ens1370 - Fix resume
Modules: ENS1370/1+ driver Fix resume of ens1370 driver. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/ens1370.c')
-rw-r--r--sound/pci/ens1370.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/pci/ens1370.c b/sound/pci/ens1370.c
index 55aaf110331a..bee382995fe9 100644
--- a/sound/pci/ens1370.c
+++ b/sound/pci/ens1370.c
@@ -2061,6 +2061,13 @@ static int snd_ensoniq_suspend(struct pci_dev *pci, pm_message_t state)
#ifdef CHIP1371
snd_ac97_suspend(ensoniq->u.es1371.ac97);
#else
+ /* try to reset AK4531 */
+ outw(ES_1370_CODEC_WRITE(AK4531_RESET, 0x02), ES_REG(ensoniq, 1370_CODEC));
+ inw(ES_REG(ensoniq, 1370_CODEC));
+ udelay(100);
+ outw(ES_1370_CODEC_WRITE(AK4531_RESET, 0x03), ES_REG(ensoniq, 1370_CODEC));
+ inw(ES_REG(ensoniq, 1370_CODEC));
+ udelay(100);
snd_ak4531_suspend(ensoniq->u.es1370.ak4531);
#endif
pci_set_power_state(pci, PCI_D3hot);