summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-10-29 08:03:42 +0100
committerTakashi Iwai <tiwai@suse.de>2008-10-29 08:03:42 +0100
commitc1e99bd9d6a0c82f4fa9078ed1f570e57b2f3944 (patch)
treef3e43e7af7c4404806d9e63b5c75ed485e12fe93
parent8199de3b29d7f22f3163fcf03f7a61644c93c2ea (diff)
downloadlinux-3.10-c1e99bd9d6a0c82f4fa9078ed1f570e57b2f3944.tar.gz
linux-3.10-c1e99bd9d6a0c82f4fa9078ed1f570e57b2f3944.tar.bz2
linux-3.10-c1e99bd9d6a0c82f4fa9078ed1f570e57b2f3944.zip
ALSA: hda - Fix SPDIF mute on IDT/STAC codecs
The SPDIF mute switch code seems broken. It doesn't set unmute bits properly. Also it contains the duplicated lines (merge error?) to be cleaned up. Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/pci/hda/patch_sigmatel.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 788fdc6f326..df9b0bc7f87 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -566,10 +566,8 @@ static int stac92xx_smux_enum_put(struct snd_kcontrol *kcontrol,
nid = codec->slave_dig_outs[smux_idx - 1];
if (spec->cur_smux[smux_idx] == smux->num_items - 1)
val = AMP_OUT_MUTE;
- if (smux_idx == 0)
- nid = spec->multiout.dig_out_nid;
else
- nid = codec->slave_dig_outs[smux_idx - 1];
+ val = AMP_OUT_UNMUTE;
/* un/mute SPDIF out */
snd_hda_codec_write_cache(codec, nid, 0,
AC_VERB_SET_AMP_GAIN_MUTE, val);