diff options
author | Takashi Iwai <tiwai@suse.de> | 2016-04-26 10:04:19 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2016-04-26 10:12:46 +0200 |
commit | a33d59599653edc6469c582f0ffd99c5fc58af04 (patch) | |
tree | 3edf0d94ce44dc12139d90ff850bbf222e82db5e /sound/pci/hda/hda_generic.c | |
parent | 58a8738cfcdec389b3764a636303f97b57f85193 (diff) | |
parent | bb03ed216370cb021f377f923471e56d1de3ff5d (diff) |
Merge branch 'for-linus' into for-next
For taking back the recent change of HDA HDMI fixes for i915 HSW/BDW.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_generic.c')
-rw-r--r-- | sound/pci/hda/hda_generic.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c index dc2c13687118..320445f3bf73 100644 --- a/sound/pci/hda/hda_generic.c +++ b/sound/pci/hda/hda_generic.c @@ -826,7 +826,7 @@ static hda_nid_t path_power_update(struct hda_codec *codec, bool allow_powerdown) { hda_nid_t nid, changed = 0; - int i, state; + int i, state, power; for (i = 0; i < path->depth; i++) { nid = path->path[i]; @@ -838,7 +838,9 @@ static hda_nid_t path_power_update(struct hda_codec *codec, state = AC_PWRST_D0; else state = AC_PWRST_D3; - if (!snd_hda_check_power_state(codec, nid, state)) { + power = snd_hda_codec_read(codec, nid, 0, + AC_VERB_GET_POWER_STATE, 0); + if (power != (state | (state << 4))) { snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_POWER_STATE, state); changed = nid; |