summaryrefslogtreecommitdiff
path: root/sound/pci
diff options
context:
space:
mode:
authorSasha Khapyorsky <sashak@smlink.com>2005-04-07 18:23:58 (GMT)
committerJaroslav Kysela <perex@suse.cz>2005-05-29 07:58:37 (GMT)
commit23fea4dad67a665e8d359dbb39180422385f1dcc (patch)
tree86ce3e1f6c53897888332da646e0a6ae9d59f010 /sound/pci
parent8e8311b0ac4dc8a2cf317e122a6f7dc4467e3254 (diff)
downloadlinux-23fea4dad67a665e8d359dbb39180422385f1dcc.tar.xz
[ALSA] MC97 registers reset
AC97 Codec Separated ac97 registers reset for audio and modem (or both) as recommended in AC97 spec. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/ac97/ac97_codec.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
index ab7114c..1ad7f83 100644
--- a/sound/pci/ac97/ac97_codec.c
+++ b/sound/pci/ac97/ac97_codec.c
@@ -1872,7 +1872,11 @@ int snd_ac97_mixer(ac97_bus_t *bus, ac97_template_t *template, ac97_t **rac97)
goto __access_ok;
}
- snd_ac97_write(ac97, AC97_RESET, 0); /* reset to defaults */
+ /* reset to defaults */
+ if (!(ac97->scaps & AC97_SCAP_SKIP_AUDIO))
+ snd_ac97_write(ac97, AC97_RESET, 0);
+ if (!(ac97->scaps & AC97_SCAP_SKIP_MODEM))
+ snd_ac97_write(ac97, AC97_EXTENDED_MID, 0);
if (bus->ops->wait)
bus->ops->wait(ac97);
else {