| From d183b4fc463489b6bbe05c99afa0257a6fe578eb Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Wed, 13 Nov 2013 16:58:10 +0100 |
| Subject: ALSA: hda - Don't clear the power state at snd_hda_codec_reset() |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit d183b4fc463489b6bbe05c99afa0257a6fe578eb upstream. |
| |
| snd_hda_codec_reset() is called either in resetting the whole setup at |
| error paths or hwdep clear/reconfig sysfs triggers. But all of these |
| don't assume that the power has to be off, rather they want to keep |
| the power state unchanged (e.g. reconfig_codec() calls the power |
| up/down by itself). Thus, unconditionally clearing the power state in |
| snd_hda_codec_reset() leads to the inconsistency, confuses the further |
| operation. This patch gets rid of the lines doing that bad thing. |
| |
| Signed-off-by: Takashi Iwai <tiwai@suse.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| sound/pci/hda/hda_codec.c | 3 --- |
| 1 file changed, 3 deletions(-) |
| |
| --- a/sound/pci/hda/hda_codec.c |
| +++ b/sound/pci/hda/hda_codec.c |
| @@ -2517,9 +2517,6 @@ int snd_hda_codec_reset(struct hda_codec |
| cancel_delayed_work_sync(&codec->jackpoll_work); |
| #ifdef CONFIG_PM |
| cancel_delayed_work_sync(&codec->power_work); |
| - codec->power_on = 0; |
| - codec->power_transition = 0; |
| - codec->power_jiffies = jiffies; |
| flush_workqueue(bus->workq); |
| #endif |
| snd_hda_ctls_clear(codec); |