Skip to content

Commit c8c0a03

Browse files
KailangYangtiwai
authored andcommitted
ALSA: hda/realtek - Fixed ASUS platform headset Mic issue
ASUS platform Headset Mic was disable by default. Assigned verb table for Mic pin will enable it. Signed-off-by: Kailang Yang <kailang@realtek.com> Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/1155d914c20c40569f56d36c79254879@realtek.com Signed-off-by: Takashi Iwai <tiwai@suse.de>
1 parent 5dedc9f commit c8c0a03

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

sound/pci/hda/patch_realtek.c

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7078,6 +7078,24 @@ static void alc287_fixup_bind_dacs(struct hda_codec *codec,
70787078
0x0); /* Make sure 0x14 was disable */
70797079
}
70807080
}
7081+
/* Fix none verb table of Headset Mic pin */
7082+
static void alc_fixup_headset_mic(struct hda_codec *codec,
7083+
const struct hda_fixup *fix, int action)
7084+
{
7085+
struct alc_spec *spec = codec->spec;
7086+
static const struct hda_pintbl pincfgs[] = {
7087+
{ 0x19, 0x03a1103c },
7088+
{ }
7089+
};
7090+
7091+
switch (action) {
7092+
case HDA_FIXUP_ACT_PRE_PROBE:
7093+
snd_hda_apply_pincfgs(codec, pincfgs);
7094+
alc_update_coef_idx(codec, 0x45, 0xf<<12 | 1<<10, 5<<12);
7095+
spec->parse_flags |= HDA_PINCFG_HEADSET_MIC;
7096+
break;
7097+
}
7098+
}
70817099

70827100

70837101
enum {
@@ -7344,6 +7362,7 @@ enum {
73447362
ALC245_FIXUP_HP_X360_MUTE_LEDS,
73457363
ALC287_FIXUP_THINKPAD_I2S_SPK,
73467364
ALC287_FIXUP_MG_RTKC_CSAMP_CS35L41_I2C_THINKPAD,
7365+
ALC2XX_FIXUP_HEADSET_MIC,
73477366
};
73487367

73497368
/* A special fixup for Lenovo C940 and Yoga Duet 7;
@@ -9448,6 +9467,10 @@ static const struct hda_fixup alc269_fixups[] = {
94489467
.chained = true,
94499468
.chain_id = ALC287_FIXUP_CS35L41_I2C_2_THINKPAD_ACPI,
94509469
},
9470+
[ALC2XX_FIXUP_HEADSET_MIC] = {
9471+
.type = HDA_FIXUP_FUNC,
9472+
.v.func = alc_fixup_headset_mic,
9473+
},
94519474
};
94529475

94539476
static const struct snd_pci_quirk alc269_fixup_tbl[] = {
@@ -10752,6 +10775,8 @@ static const struct snd_hda_pin_quirk alc269_fallback_pin_fixup_tbl[] = {
1075210775
SND_HDA_PIN_QUIRK(0x10ec0274, 0x1028, "Dell", ALC274_FIXUP_DELL_AIO_LINEOUT_VERB,
1075310776
{0x19, 0x40000000},
1075410777
{0x1a, 0x40000000}),
10778+
SND_HDA_PIN_QUIRK(0x10ec0256, 0x1043, "ASUS", ALC2XX_FIXUP_HEADSET_MIC,
10779+
{0x19, 0x40000000}),
1075510780
{}
1075610781
};
1075710782

0 commit comments

Comments
 (0)