diff options
| -rw-r--r-- | sound/pci/hda/patch_realtek.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 48c9d10301b7..e575685cca99 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
| @@ -2726,6 +2726,18 @@ static void alc269_fixup_hp_mute_led(struct hda_codec *codec, | |||
| 2726 | } | 2726 | } |
| 2727 | } | 2727 | } |
| 2728 | 2728 | ||
| 2729 | static void alc269_fixup_hp_mute_led_mic1(struct hda_codec *codec, | ||
| 2730 | const struct hda_fixup *fix, int action) | ||
| 2731 | { | ||
| 2732 | struct alc_spec *spec = codec->spec; | ||
| 2733 | if (action == HDA_FIXUP_ACT_PRE_PROBE) { | ||
| 2734 | spec->mute_led_polarity = 0; | ||
| 2735 | spec->mute_led_nid = 0x18; | ||
| 2736 | spec->gen.vmaster_mute.hook = alc269_fixup_mic_mute_hook; | ||
| 2737 | spec->gen.vmaster_mute_enum = 1; | ||
| 2738 | } | ||
| 2739 | } | ||
| 2740 | |||
| 2729 | static void alc269_fixup_hp_mute_led_mic2(struct hda_codec *codec, | 2741 | static void alc269_fixup_hp_mute_led_mic2(struct hda_codec *codec, |
| 2730 | const struct hda_fixup *fix, int action) | 2742 | const struct hda_fixup *fix, int action) |
| 2731 | { | 2743 | { |
| @@ -2771,6 +2783,7 @@ enum { | |||
| 2771 | ALC269VB_FIXUP_AMIC, | 2783 | ALC269VB_FIXUP_AMIC, |
| 2772 | ALC269VB_FIXUP_DMIC, | 2784 | ALC269VB_FIXUP_DMIC, |
| 2773 | ALC269_FIXUP_HP_MUTE_LED, | 2785 | ALC269_FIXUP_HP_MUTE_LED, |
| 2786 | ALC269_FIXUP_HP_MUTE_LED_MIC1, | ||
| 2774 | ALC269_FIXUP_HP_MUTE_LED_MIC2, | 2787 | ALC269_FIXUP_HP_MUTE_LED_MIC2, |
| 2775 | ALC269_FIXUP_INV_DMIC, | 2788 | ALC269_FIXUP_INV_DMIC, |
| 2776 | ALC269_FIXUP_LENOVO_DOCK, | 2789 | ALC269_FIXUP_LENOVO_DOCK, |
| @@ -2903,6 +2916,10 @@ static const struct hda_fixup alc269_fixups[] = { | |||
| 2903 | .type = HDA_FIXUP_FUNC, | 2916 | .type = HDA_FIXUP_FUNC, |
| 2904 | .v.func = alc269_fixup_hp_mute_led, | 2917 | .v.func = alc269_fixup_hp_mute_led, |
| 2905 | }, | 2918 | }, |
| 2919 | [ALC269_FIXUP_HP_MUTE_LED_MIC1] = { | ||
| 2920 | .type = HDA_FIXUP_FUNC, | ||
| 2921 | .v.func = alc269_fixup_hp_mute_led_mic1, | ||
| 2922 | }, | ||
| 2906 | [ALC269_FIXUP_HP_MUTE_LED_MIC2] = { | 2923 | [ALC269_FIXUP_HP_MUTE_LED_MIC2] = { |
| 2907 | .type = HDA_FIXUP_FUNC, | 2924 | .type = HDA_FIXUP_FUNC, |
| 2908 | .v.func = alc269_fixup_hp_mute_led_mic2, | 2925 | .v.func = alc269_fixup_hp_mute_led_mic2, |
| @@ -2947,6 +2964,8 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { | |||
| 2947 | SND_PCI_QUIRK(0x1025, 0x029b, "Acer 1810TZ", ALC269_FIXUP_INV_DMIC), | 2964 | SND_PCI_QUIRK(0x1025, 0x029b, "Acer 1810TZ", ALC269_FIXUP_INV_DMIC), |
| 2948 | SND_PCI_QUIRK(0x1025, 0x0349, "Acer AOD260", ALC269_FIXUP_INV_DMIC), | 2965 | SND_PCI_QUIRK(0x1025, 0x0349, "Acer AOD260", ALC269_FIXUP_INV_DMIC), |
| 2949 | SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2), | 2966 | SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2), |
| 2967 | SND_PCI_QUIRK(0x103c, 0x1973, "HP Pavilion", ALC269_FIXUP_HP_MUTE_LED_MIC1), | ||
| 2968 | SND_PCI_QUIRK(0x103c, 0x1983, "HP Pavilion", ALC269_FIXUP_HP_MUTE_LED_MIC1), | ||
| 2950 | SND_PCI_QUIRK_VENDOR(0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED), | 2969 | SND_PCI_QUIRK_VENDOR(0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED), |
| 2951 | SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_DMIC), | 2970 | SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_DMIC), |
| 2952 | SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_DMIC), | 2971 | SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_DMIC), |
