diff options
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index bc07d369fac4..0e303b99a47c 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -3439,6 +3439,9 @@ static void alc283_fixup_chromebook(struct hda_codec *codec, | |||
3439 | /* Set to manual mode */ | 3439 | /* Set to manual mode */ |
3440 | val = alc_read_coef_idx(codec, 0x06); | 3440 | val = alc_read_coef_idx(codec, 0x06); |
3441 | alc_write_coef_idx(codec, 0x06, val & ~0x000c); | 3441 | alc_write_coef_idx(codec, 0x06, val & ~0x000c); |
3442 | /* Enable Line1 input control by verb */ | ||
3443 | val = alc_read_coef_idx(codec, 0x1a); | ||
3444 | alc_write_coef_idx(codec, 0x1a, val | (1 << 4)); | ||
3442 | break; | 3445 | break; |
3443 | } | 3446 | } |
3444 | } | 3447 | } |
@@ -3531,6 +3534,7 @@ enum { | |||
3531 | ALC269VB_FIXUP_ORDISSIMO_EVE2, | 3534 | ALC269VB_FIXUP_ORDISSIMO_EVE2, |
3532 | ALC283_FIXUP_CHROME_BOOK, | 3535 | ALC283_FIXUP_CHROME_BOOK, |
3533 | ALC282_FIXUP_ASUS_TX300, | 3536 | ALC282_FIXUP_ASUS_TX300, |
3537 | ALC283_FIXUP_INT_MIC, | ||
3534 | }; | 3538 | }; |
3535 | 3539 | ||
3536 | static const struct hda_fixup alc269_fixups[] = { | 3540 | static const struct hda_fixup alc269_fixups[] = { |
@@ -3790,6 +3794,16 @@ static const struct hda_fixup alc269_fixups[] = { | |||
3790 | .type = HDA_FIXUP_FUNC, | 3794 | .type = HDA_FIXUP_FUNC, |
3791 | .v.func = alc282_fixup_asus_tx300, | 3795 | .v.func = alc282_fixup_asus_tx300, |
3792 | }, | 3796 | }, |
3797 | [ALC283_FIXUP_INT_MIC] = { | ||
3798 | .type = HDA_FIXUP_VERBS, | ||
3799 | .v.verbs = (const struct hda_verb[]) { | ||
3800 | {0x20, AC_VERB_SET_COEF_INDEX, 0x1a}, | ||
3801 | {0x20, AC_VERB_SET_PROC_COEF, 0x0011}, | ||
3802 | { } | ||
3803 | }, | ||
3804 | .chained = true, | ||
3805 | .chain_id = ALC269_FIXUP_LIMIT_INT_MIC_BOOST | ||
3806 | }, | ||
3793 | }; | 3807 | }; |
3794 | 3808 | ||
3795 | static const struct snd_pci_quirk alc269_fixup_tbl[] = { | 3809 | static const struct snd_pci_quirk alc269_fixup_tbl[] = { |
@@ -3874,7 +3888,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { | |||
3874 | SND_PCI_QUIRK(0x17aa, 0x2214, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3888 | SND_PCI_QUIRK(0x17aa, 0x2214, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), |
3875 | SND_PCI_QUIRK(0x17aa, 0x2215, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3889 | SND_PCI_QUIRK(0x17aa, 0x2215, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), |
3876 | SND_PCI_QUIRK(0x17aa, 0x5013, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3890 | SND_PCI_QUIRK(0x17aa, 0x5013, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), |
3877 | SND_PCI_QUIRK(0x17aa, 0x501a, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3891 | SND_PCI_QUIRK(0x17aa, 0x501a, "Thinkpad", ALC283_FIXUP_INT_MIC), |
3878 | SND_PCI_QUIRK(0x17aa, 0x5026, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3892 | SND_PCI_QUIRK(0x17aa, 0x5026, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), |
3879 | SND_PCI_QUIRK(0x17aa, 0x5109, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), | 3893 | SND_PCI_QUIRK(0x17aa, 0x5109, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), |
3880 | SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K), | 3894 | SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K), |