aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_realtek.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index f79a6d1cf524..395e99ce4fbd 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -5095,24 +5095,41 @@ static int alc861vd_parse_auto_config(struct hda_codec *codec)
5095} 5095}
5096 5096
5097enum { 5097enum {
5098 ALC660VD_FIX_ASUS_GPIO1 5098 ALC660VD_FIX_ASUS_GPIO1,
5099 ALC861VD_FIX_DALLAS,
5099}; 5100};
5100 5101
5101/* reset GPIO1 */ 5102/* exclude VREF80 */
5103static void alc861vd_fixup_dallas(struct hda_codec *codec,
5104 const struct alc_fixup *fix, int action)
5105{
5106 if (action == ALC_FIXUP_ACT_PRE_PROBE) {
5107 snd_hda_override_pin_caps(codec, 0x18, 0x00001714);
5108 snd_hda_override_pin_caps(codec, 0x19, 0x0000171c);
5109 }
5110}
5111
5102static const struct alc_fixup alc861vd_fixups[] = { 5112static const struct alc_fixup alc861vd_fixups[] = {
5103 [ALC660VD_FIX_ASUS_GPIO1] = { 5113 [ALC660VD_FIX_ASUS_GPIO1] = {
5104 .type = ALC_FIXUP_VERBS, 5114 .type = ALC_FIXUP_VERBS,
5105 .v.verbs = (const struct hda_verb[]) { 5115 .v.verbs = (const struct hda_verb[]) {
5116 /* reset GPIO1 */
5106 {0x01, AC_VERB_SET_GPIO_MASK, 0x03}, 5117 {0x01, AC_VERB_SET_GPIO_MASK, 0x03},
5107 {0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01}, 5118 {0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01},
5108 {0x01, AC_VERB_SET_GPIO_DATA, 0x01}, 5119 {0x01, AC_VERB_SET_GPIO_DATA, 0x01},
5109 { } 5120 { }
5110 } 5121 }
5111 }, 5122 },
5123 [ALC861VD_FIX_DALLAS] = {
5124 .type = ALC_FIXUP_FUNC,
5125 .v.func = alc861vd_fixup_dallas,
5126 },
5112}; 5127};
5113 5128
5114static const struct snd_pci_quirk alc861vd_fixup_tbl[] = { 5129static const struct snd_pci_quirk alc861vd_fixup_tbl[] = {
5130 SND_PCI_QUIRK(0x103c, 0x30bf, "HP TX1000", ALC861VD_FIX_DALLAS),
5115 SND_PCI_QUIRK(0x1043, 0x1339, "ASUS A7-K", ALC660VD_FIX_ASUS_GPIO1), 5131 SND_PCI_QUIRK(0x1043, 0x1339, "ASUS A7-K", ALC660VD_FIX_ASUS_GPIO1),
5132 SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba L30-149", ALC861VD_FIX_DALLAS),
5116 {} 5133 {}
5117}; 5134};
5118 5135