diff options
author | Adrian Wilkins <adrian.wilkins@nhs.net> | 2011-05-19 16:52:38 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-05-20 03:01:28 -0400 |
commit | 5a2d227fdc7a02ed1b4cebba391d8fb9ad57caaf (patch) | |
tree | cdc6321b42e80355b66a7855978bcec2fe54d0a8 /sound | |
parent | 39dfe1387060dbad30255fc36c8b3b67d3b359d7 (diff) |
ALSA: hda - Fix input-src parse in patch_analog.c
Compare pin type enum to the pin type and not the array index.
Fixes bug#0005368.
Signed-off-by: Adrian Wilkins <adrian.wilkins@nhs.net>
Cc: <stable@kernel.org> (2.6.37 and later)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_analog.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c index 981c631624d9..f1b3875c57df 100644 --- a/sound/pci/hda/patch_analog.c +++ b/sound/pci/hda/patch_analog.c | |||
@@ -3070,6 +3070,7 @@ static void ad1988_auto_init_analog_input(struct hda_codec *codec) | |||
3070 | 3070 | ||
3071 | for (i = 0; i < cfg->num_inputs; i++) { | 3071 | for (i = 0; i < cfg->num_inputs; i++) { |
3072 | hda_nid_t nid = cfg->inputs[i].pin; | 3072 | hda_nid_t nid = cfg->inputs[i].pin; |
3073 | int type = cfg->inputs[i].type; | ||
3073 | switch (nid) { | 3074 | switch (nid) { |
3074 | case 0x15: /* port-C */ | 3075 | case 0x15: /* port-C */ |
3075 | snd_hda_codec_write(codec, 0x33, 0, AC_VERB_SET_CONNECT_SEL, 0x0); | 3076 | snd_hda_codec_write(codec, 0x33, 0, AC_VERB_SET_CONNECT_SEL, 0x0); |
@@ -3079,7 +3080,7 @@ static void ad1988_auto_init_analog_input(struct hda_codec *codec) | |||
3079 | break; | 3080 | break; |
3080 | } | 3081 | } |
3081 | snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, | 3082 | snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, |
3082 | i == AUTO_PIN_MIC ? PIN_VREF80 : PIN_IN); | 3083 | type == AUTO_PIN_MIC ? PIN_VREF80 : PIN_IN); |
3083 | if (nid != AD1988_PIN_CD_NID) | 3084 | if (nid != AD1988_PIN_CD_NID) |
3084 | snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_AMP_GAIN_MUTE, | 3085 | snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_AMP_GAIN_MUTE, |
3085 | AMP_OUT_MUTE); | 3086 | AMP_OUT_MUTE); |