Merge branch 'fix/hda' into for-linus
This commit is contained in:
Коммит
8fda43c1a0
|
@ -2619,16 +2619,18 @@ static int alc_build_controls(struct hda_codec *codec)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* assign Capture Source enums to NID */
|
/* assign Capture Source enums to NID */
|
||||||
kctl = snd_hda_find_mixer_ctl(codec, "Capture Source");
|
if (spec->capsrc_nids || spec->adc_nids) {
|
||||||
if (!kctl)
|
kctl = snd_hda_find_mixer_ctl(codec, "Capture Source");
|
||||||
kctl = snd_hda_find_mixer_ctl(codec, "Input Source");
|
if (!kctl)
|
||||||
for (i = 0; kctl && i < kctl->count; i++) {
|
kctl = snd_hda_find_mixer_ctl(codec, "Input Source");
|
||||||
hda_nid_t *nids = spec->capsrc_nids;
|
for (i = 0; kctl && i < kctl->count; i++) {
|
||||||
if (!nids)
|
hda_nid_t *nids = spec->capsrc_nids;
|
||||||
nids = spec->adc_nids;
|
if (!nids)
|
||||||
err = snd_hda_add_nid(codec, kctl, i, nids[i]);
|
nids = spec->adc_nids;
|
||||||
if (err < 0)
|
err = snd_hda_add_nid(codec, kctl, i, nids[i]);
|
||||||
return err;
|
if (err < 0)
|
||||||
|
return err;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (spec->cap_mixer) {
|
if (spec->cap_mixer) {
|
||||||
const char *kname = kctl ? kctl->id.name : NULL;
|
const char *kname = kctl ? kctl->id.name : NULL;
|
||||||
|
@ -6948,7 +6950,7 @@ static struct hda_input_mux mb5_capture_source = {
|
||||||
.num_items = 3,
|
.num_items = 3,
|
||||||
.items = {
|
.items = {
|
||||||
{ "Mic", 0x1 },
|
{ "Mic", 0x1 },
|
||||||
{ "Line", 0x2 },
|
{ "Line", 0x7 },
|
||||||
{ "CD", 0x4 },
|
{ "CD", 0x4 },
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -7469,8 +7471,8 @@ static struct snd_kcontrol_new alc885_mb5_mixer[] = {
|
||||||
HDA_BIND_MUTE ("LFE Playback Switch", 0x0e, 0x02, HDA_INPUT),
|
HDA_BIND_MUTE ("LFE Playback Switch", 0x0e, 0x02, HDA_INPUT),
|
||||||
HDA_CODEC_VOLUME("Headphone Playback Volume", 0x0f, 0x00, HDA_OUTPUT),
|
HDA_CODEC_VOLUME("Headphone Playback Volume", 0x0f, 0x00, HDA_OUTPUT),
|
||||||
HDA_BIND_MUTE ("Headphone Playback Switch", 0x0f, 0x02, HDA_INPUT),
|
HDA_BIND_MUTE ("Headphone Playback Switch", 0x0f, 0x02, HDA_INPUT),
|
||||||
HDA_CODEC_VOLUME("Line Playback Volume", 0x0b, 0x02, HDA_INPUT),
|
HDA_CODEC_VOLUME("Line Playback Volume", 0x0b, 0x07, HDA_INPUT),
|
||||||
HDA_CODEC_MUTE ("Line Playback Switch", 0x0b, 0x02, HDA_INPUT),
|
HDA_CODEC_MUTE ("Line Playback Switch", 0x0b, 0x07, HDA_INPUT),
|
||||||
HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x01, HDA_INPUT),
|
HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x01, HDA_INPUT),
|
||||||
HDA_CODEC_MUTE ("Mic Playback Switch", 0x0b, 0x01, HDA_INPUT),
|
HDA_CODEC_MUTE ("Mic Playback Switch", 0x0b, 0x01, HDA_INPUT),
|
||||||
HDA_CODEC_VOLUME("Line Boost", 0x15, 0x00, HDA_INPUT),
|
HDA_CODEC_VOLUME("Line Boost", 0x15, 0x00, HDA_INPUT),
|
||||||
|
@ -7853,10 +7855,9 @@ static struct hda_verb alc885_mb5_init_verbs[] = {
|
||||||
{0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN},
|
{0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN},
|
||||||
{0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
|
{0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
|
||||||
|
|
||||||
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
|
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0x1)},
|
||||||
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(3)},
|
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0x7)},
|
||||||
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(2)},
|
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0x4)},
|
||||||
{0x24, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(4)},
|
|
||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче