Added mono mixer volume/switch controls for STAC9205 and STAC925x codecs.
Signed-off-by: Matthew Ranostay mranostay@embeddedalley.com --- diff -r 4177ec41bbef pci/hda/patch_sigmatel.c --- a/pci/hda/patch_sigmatel.c Mon Jan 21 14:33:37 2008 +0100 +++ b/pci/hda/patch_sigmatel.c Mon Jan 21 11:37:49 2008 -0500 @@ -572,6 +572,7 @@ static struct hda_verb stac925x_core_ini static struct hda_verb stac925x_core_init[] = { /* set dac0mux for dac converter */ { 0x06, AC_VERB_SET_CONNECT_SEL, 0x00}, + { 0x10, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, {} };
@@ -600,6 +601,7 @@ static struct hda_verb stac9205_core_ini static struct hda_verb stac9205_core_init[] = { /* set master volume and direct control */ { 0x24, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff}, + { 0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, {} };
@@ -748,6 +750,9 @@ static struct snd_kcontrol_new stac92hd7
static struct snd_kcontrol_new stac925x_mixer[] = { STAC_INPUT_SOURCE(1), + HDA_CODEC_MUTE_MONO("Mono Playback Switch", 0x10, 0x1, 0, HDA_OUTPUT), + HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x10, 0x1, 0, HDA_OUTPUT), + HDA_CODEC_VOLUME("Capture Volume", 0x09, 0, HDA_OUTPUT), HDA_CODEC_MUTE("Capture Switch", 0x09, 0, HDA_OUTPUT), HDA_CODEC_VOLUME("Capture Mux Volume", 0x0f, 0, HDA_OUTPUT), @@ -757,6 +762,9 @@ static struct snd_kcontrol_new stac9205_ static struct snd_kcontrol_new stac9205_mixer[] = { STAC_INPUT_SOURCE(2), STAC_ANALOG_LOOPBACK(0xFE0, 0x7E0, 1), + + HDA_CODEC_MUTE_MONO("Mono Playback Switch", 0x14, 0x1, 0, HDA_OUTPUT), + HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x14, 0x1, 0, HDA_OUTPUT),
HDA_CODEC_VOLUME_IDX("Capture Volume", 0x0, 0x1b, 0x0, HDA_INPUT), HDA_CODEC_MUTE_IDX("Capture Switch", 0x0, 0x1d, 0x0, HDA_OUTPUT),