瀏覽代碼

ALSA: hda/realtek - Add support for Acer Aspire E5-475 headset mic

The Acer laptop Aspire E5-475 with ALC255 can't detect the headset
microphone until we modify a pin definition.

Signed-off-by: Chris Chiu <chiu@endlessm.com>
Signed-off-by: Daniel Drake <drake@endlessm.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Chris Chiu 8 年之前
父節點
當前提交
5824ce8de7
共有 1 個文件被更改,包括 14 次插入0 次删除
  1. 14 0
      sound/pci/hda/patch_realtek.c

+ 14 - 0
sound/pci/hda/patch_realtek.c

@@ -4833,6 +4833,7 @@ enum {
 	ALC290_FIXUP_SUBWOOFER_HSJACK,
 	ALC290_FIXUP_SUBWOOFER_HSJACK,
 	ALC269_FIXUP_THINKPAD_ACPI,
 	ALC269_FIXUP_THINKPAD_ACPI,
 	ALC269_FIXUP_DMIC_THINKPAD_ACPI,
 	ALC269_FIXUP_DMIC_THINKPAD_ACPI,
+	ALC255_FIXUP_ACER_MIC_NO_PRESENCE,
 	ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
 	ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
 	ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
 	ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
 	ALC255_FIXUP_HEADSET_MODE,
 	ALC255_FIXUP_HEADSET_MODE,
@@ -5287,6 +5288,15 @@ static const struct hda_fixup alc269_fixups[] = {
 		.chained = true,
 		.chained = true,
 		.chain_id = ALC269_FIXUP_THINKPAD_ACPI,
 		.chain_id = ALC269_FIXUP_THINKPAD_ACPI,
 	},
 	},
+	[ALC255_FIXUP_ACER_MIC_NO_PRESENCE] = {
+		.type = HDA_FIXUP_PINS,
+		.v.pins = (const struct hda_pintbl[]) {
+			{ 0x19, 0x01a1913c }, /* use as headset mic, without its own jack detect */
+			{ }
+		},
+		.chained = true,
+		.chain_id = ALC255_FIXUP_HEADSET_MODE
+	},
 	[ALC255_FIXUP_DELL1_MIC_NO_PRESENCE] = {
 	[ALC255_FIXUP_DELL1_MIC_NO_PRESENCE] = {
 		.type = HDA_FIXUP_PINS,
 		.type = HDA_FIXUP_PINS,
 		.v.pins = (const struct hda_pintbl[]) {
 		.v.pins = (const struct hda_pintbl[]) {
@@ -5851,6 +5861,10 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
 	{0x21, 0x03211020}
 	{0x21, 0x03211020}
 
 
 static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
 static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
+	SND_HDA_PIN_QUIRK(0x10ec0255, 0x1025, "Acer", ALC255_FIXUP_ACER_MIC_NO_PRESENCE,
+		{0x12, 0x90a601c0},
+		{0x14, 0x90171120},
+		{0x21, 0x02211030}),
 	SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
 	SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
 		ALC225_STANDARD_PINS,
 		ALC225_STANDARD_PINS,
 		{0x12, 0xb7a60130},
 		{0x12, 0xb7a60130},