Commit 6cabf6b0 authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

ALSA: Fix AC97 power down

Some laptops don't like PR3 powerdown.  Do PR3 powerdown only
for the real power-saving.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@perex.cz>
parent 942fd1eb
...@@ -2295,9 +2295,11 @@ static void snd_ac97_powerdown(struct snd_ac97 *ac97) ...@@ -2295,9 +2295,11 @@ static void snd_ac97_powerdown(struct snd_ac97 *ac97)
power |= AC97_PD_PR0 | AC97_PD_PR1; /* ADC & DAC powerdown */ power |= AC97_PD_PR0 | AC97_PD_PR1; /* ADC & DAC powerdown */
snd_ac97_write(ac97, AC97_POWERDOWN, power); snd_ac97_write(ac97, AC97_POWERDOWN, power);
udelay(100); udelay(100);
power |= AC97_PD_PR2 | AC97_PD_PR3; /* Analog Mixer powerdown */ power |= AC97_PD_PR2; /* Analog Mixer powerdown (Vref on) */
snd_ac97_write(ac97, AC97_POWERDOWN, power); snd_ac97_write(ac97, AC97_POWERDOWN, power);
if (ac97_is_power_save_mode(ac97)) { if (ac97_is_power_save_mode(ac97)) {
power |= AC97_PD_PR3; /* Analog Mixer powerdown */
snd_ac97_write(ac97, AC97_POWERDOWN, power);
udelay(100); udelay(100);
/* AC-link powerdown, internal Clk disable */ /* AC-link powerdown, internal Clk disable */
/* FIXME: this may cause click noises on some boards */ /* FIXME: this may cause click noises on some boards */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment