diff options
| -rw-r--r-- | sound/pci/hda/patch_realtek.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index c435ae0a19a6..d723c1fdd5f3 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
| @@ -1819,6 +1819,7 @@ enum { | |||
| 1819 | ALC889_FIXUP_DAC_ROUTE, | 1819 | ALC889_FIXUP_DAC_ROUTE, |
| 1820 | ALC889_FIXUP_MBP_VREF, | 1820 | ALC889_FIXUP_MBP_VREF, |
| 1821 | ALC889_FIXUP_IMAC91_VREF, | 1821 | ALC889_FIXUP_IMAC91_VREF, |
| 1822 | ALC889_FIXUP_MBA11_VREF, | ||
| 1822 | ALC889_FIXUP_MBA21_VREF, | 1823 | ALC889_FIXUP_MBA21_VREF, |
| 1823 | ALC882_FIXUP_INV_DMIC, | 1824 | ALC882_FIXUP_INV_DMIC, |
| 1824 | ALC882_FIXUP_NO_PRIMARY_HP, | 1825 | ALC882_FIXUP_NO_PRIMARY_HP, |
| @@ -1949,6 +1950,16 @@ static void alc889_fixup_imac91_vref(struct hda_codec *codec, | |||
| 1949 | alc889_fixup_mac_pins(codec, nids, ARRAY_SIZE(nids)); | 1950 | alc889_fixup_mac_pins(codec, nids, ARRAY_SIZE(nids)); |
| 1950 | } | 1951 | } |
| 1951 | 1952 | ||
| 1953 | /* Set VREF on speaker pins on mba11 */ | ||
| 1954 | static void alc889_fixup_mba11_vref(struct hda_codec *codec, | ||
| 1955 | const struct hda_fixup *fix, int action) | ||
| 1956 | { | ||
| 1957 | static hda_nid_t nids[1] = { 0x18 }; | ||
| 1958 | |||
| 1959 | if (action == HDA_FIXUP_ACT_INIT) | ||
| 1960 | alc889_fixup_mac_pins(codec, nids, ARRAY_SIZE(nids)); | ||
| 1961 | } | ||
| 1962 | |||
| 1952 | /* Set VREF on speaker pins on mba21 */ | 1963 | /* Set VREF on speaker pins on mba21 */ |
| 1953 | static void alc889_fixup_mba21_vref(struct hda_codec *codec, | 1964 | static void alc889_fixup_mba21_vref(struct hda_codec *codec, |
| 1954 | const struct hda_fixup *fix, int action) | 1965 | const struct hda_fixup *fix, int action) |
| @@ -2167,6 +2178,12 @@ static const struct hda_fixup alc882_fixups[] = { | |||
| 2167 | .chained = true, | 2178 | .chained = true, |
| 2168 | .chain_id = ALC882_FIXUP_GPIO1, | 2179 | .chain_id = ALC882_FIXUP_GPIO1, |
| 2169 | }, | 2180 | }, |
| 2181 | [ALC889_FIXUP_MBA11_VREF] = { | ||
| 2182 | .type = HDA_FIXUP_FUNC, | ||
| 2183 | .v.func = alc889_fixup_mba11_vref, | ||
| 2184 | .chained = true, | ||
| 2185 | .chain_id = ALC889_FIXUP_MBP_VREF, | ||
| 2186 | }, | ||
| 2170 | [ALC889_FIXUP_MBA21_VREF] = { | 2187 | [ALC889_FIXUP_MBA21_VREF] = { |
| 2171 | .type = HDA_FIXUP_FUNC, | 2188 | .type = HDA_FIXUP_FUNC, |
| 2172 | .v.func = alc889_fixup_mba21_vref, | 2189 | .v.func = alc889_fixup_mba21_vref, |
| @@ -2242,7 +2259,7 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = { | |||
| 2242 | SND_PCI_QUIRK(0x106b, 0x2c00, "MacbookPro rev3", ALC889_FIXUP_MBP_VREF), | 2259 | SND_PCI_QUIRK(0x106b, 0x2c00, "MacbookPro rev3", ALC889_FIXUP_MBP_VREF), |
| 2243 | SND_PCI_QUIRK(0x106b, 0x3000, "iMac", ALC889_FIXUP_MBP_VREF), | 2260 | SND_PCI_QUIRK(0x106b, 0x3000, "iMac", ALC889_FIXUP_MBP_VREF), |
| 2244 | SND_PCI_QUIRK(0x106b, 0x3200, "iMac 7,1 Aluminum", ALC882_FIXUP_EAPD), | 2261 | SND_PCI_QUIRK(0x106b, 0x3200, "iMac 7,1 Aluminum", ALC882_FIXUP_EAPD), |
| 2245 | SND_PCI_QUIRK(0x106b, 0x3400, "MacBookAir 1,1", ALC889_FIXUP_MBP_VREF), | 2262 | SND_PCI_QUIRK(0x106b, 0x3400, "MacBookAir 1,1", ALC889_FIXUP_MBA11_VREF), |
| 2246 | SND_PCI_QUIRK(0x106b, 0x3500, "MacBookAir 2,1", ALC889_FIXUP_MBA21_VREF), | 2263 | SND_PCI_QUIRK(0x106b, 0x3500, "MacBookAir 2,1", ALC889_FIXUP_MBA21_VREF), |
| 2247 | SND_PCI_QUIRK(0x106b, 0x3600, "Macbook 3,1", ALC889_FIXUP_MBP_VREF), | 2264 | SND_PCI_QUIRK(0x106b, 0x3600, "Macbook 3,1", ALC889_FIXUP_MBP_VREF), |
| 2248 | SND_PCI_QUIRK(0x106b, 0x3800, "MacbookPro 4,1", ALC889_FIXUP_MBP_VREF), | 2265 | SND_PCI_QUIRK(0x106b, 0x3800, "MacbookPro 4,1", ALC889_FIXUP_MBP_VREF), |
