]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.31/patches.drivers/alsa-hda-sigmatel-spdif-fix
Move xen patchset to new version's subdir.
[people/teissler/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / alsa-hda-sigmatel-spdif-fix
diff --git a/src/patches/suse-2.6.27.31/patches.drivers/alsa-hda-sigmatel-spdif-fix b/src/patches/suse-2.6.27.31/patches.drivers/alsa-hda-sigmatel-spdif-fix
new file mode 100644 (file)
index 0000000..d5a0518
--- /dev/null
@@ -0,0 +1,29 @@
+From: Takashi Iwai <tiwai@suse.de>
+Subject: ALSA: hda - Fix SPDIF mute on IDT/STAC codecs
+Patch-mainline: 2.6.28-rc3
+References: 
+
+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>
+
+---
+ sound/pci/hda/patch_sigmatel.c |    4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+--- a/sound/pci/hda/patch_sigmatel.c
++++ b/sound/pci/hda/patch_sigmatel.c
+@@ -567,10 +567,8 @@ static int stac92xx_smux_enum_put(struct
+                       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);