On 10/22/2010 01:31 PM, Clemens Ladisch wrote:
Jiri Slaby wrote:
On 10/21/2010 10:05 AM, Takashi Iwai wrote:
commit de8c85f7840e5e29629de95f5af24297fb325e0b ALSA: HDA: Sigmatel: work around incorrect master muting
Reverting this one helps.
This one introduced even more wrong volume information on some codecs. Pleasy try this patch on top:
Yup, works for me.
--- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c @@ -32,6 +32,7 @@ #include <sound/core.h> #include <sound/asoundef.h> #include <sound/jack.h> +#include <sound/tlv.h> #include "hda_codec.h" #include "hda_local.h" #include "hda_beep.h" @@ -1145,7 +1146,7 @@ static int stac92xx_build_controls(struct hda_codec *codec) /* correct volume offset */ vmaster_tlv[2] += vmaster_tlv[3] * spec->volume_offset; /* minimum value is actually mute */
vmaster_tlv[3] |= 0x1000;
err = snd_hda_add_vmaster(codec, "Master Playback Volume", vmaster_tlv, slave_vols); if (err < 0)vmaster_tlv[3] |= TLV_DB_SCALE_MUTE;
thanks,