30 lines
1.1 KiB
Diff
30 lines
1.1 KiB
Diff
|
From: Takashi Iwai <tiwai@suse.de>
|
||
|
Date: Mon, 20 Aug 2012 19:25:22 +0000 (+0200)
|
||
|
Subject: ALSA: hda - Fix leftover codec->power_transition
|
||
|
X-Git-Tag: v3.6-rc3~14^2~1
|
||
|
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git;a=commitdiff_plain;h=535b6c51fe8293c88ce919cdfc4390c67a1cb6d1
|
||
|
|
||
|
ALSA: hda - Fix leftover codec->power_transition
|
||
|
|
||
|
When the codec turn-on operation is canceled by the immediate
|
||
|
power-on, the driver left the power_transition flag as is.
|
||
|
This caused the persistent avoidance of power-save behavior.
|
||
|
|
||
|
Cc: <stable@vger.kernel.org> [v3.5+]
|
||
|
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
||
|
---
|
||
|
|
||
|
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
|
||
|
index c3077d5..f560051 100644
|
||
|
--- a/sound/pci/hda/hda_codec.c
|
||
|
+++ b/sound/pci/hda/hda_codec.c
|
||
|
@@ -4454,6 +4454,8 @@ static void __snd_hda_power_up(struct hda_codec *codec, bool wait_power_down)
|
||
|
* then there is no need to go through power up here.
|
||
|
*/
|
||
|
if (codec->power_on) {
|
||
|
+ if (codec->power_transition < 0)
|
||
|
+ codec->power_transition = 0;
|
||
|
spin_unlock(&codec->power_lock);
|
||
|
return;
|
||
|
}
|