aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-02-20 11:41:51 -0500
committerTakashi Iwai <tiwai@suse.de>2012-02-20 11:43:00 -0500
commit96e225f6922ecf3afafb55fdb0e6e771b3f71e94 (patch)
tree0311b0dbf8e910c7840d83271e2f2227cec8fd7a /sound/pci/hda/patch_realtek.c
parent967b88c47744f7ec424c71630c1f551d34e08eef (diff)
ALSA: hda/realtek - Rewrite ALC880 model=z71v with auto-parser
ASUS Z71V has a totally broken BIOS setup (at least the info I got), thus we need to override the whole pin-config table to make the auto-parser working correctly. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index e88c753743dc..71acd9b9a88d 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4449,6 +4449,7 @@ enum {
4449 ALC880_FIXUP_F1734, 4449 ALC880_FIXUP_F1734,
4450 ALC880_FIXUP_UNIWILL, 4450 ALC880_FIXUP_UNIWILL,
4451 ALC880_FIXUP_UNIWILL_DIG, 4451 ALC880_FIXUP_UNIWILL_DIG,
4452 ALC880_FIXUP_Z71V,
4452}; 4453};
4453 4454
4454/* enable the volume-knob widget support on NID 0x21 */ 4455/* enable the volume-knob widget support on NID 0x21 */
@@ -4579,10 +4580,29 @@ static const struct alc_fixup alc880_fixups[] = {
4579 { } 4580 { }
4580 } 4581 }
4581 }, 4582 },
4583 [ALC880_FIXUP_Z71V] = {
4584 .type = ALC_FIXUP_PINS,
4585 .v.pins = (const struct alc_pincfg[]) {
4586 /* set up the whole pins as BIOS is utterly broken */
4587 { 0x14, 0x99030120 }, /* speaker */
4588 { 0x15, 0x0121411f }, /* HP */
4589 { 0x16, 0x411111f0 }, /* N/A */
4590 { 0x17, 0x411111f0 }, /* N/A */
4591 { 0x18, 0x01a19950 }, /* mic-in */
4592 { 0x19, 0x411111f0 }, /* N/A */
4593 { 0x1a, 0x01813031 }, /* line-in */
4594 { 0x1b, 0x411111f0 }, /* N/A */
4595 { 0x1c, 0x411111f0 }, /* N/A */
4596 { 0x1d, 0x411111f0 }, /* N/A */
4597 { 0x1e, 0x0144111e }, /* SPDIF */
4598 { }
4599 }
4600 },
4582}; 4601};
4583 4602
4584static const struct snd_pci_quirk alc880_fixup_tbl[] = { 4603static const struct snd_pci_quirk alc880_fixup_tbl[] = {
4585 SND_PCI_QUIRK(0x1019, 0x0f69, "Coeus G610P", ALC880_FIXUP_W810), 4604 SND_PCI_QUIRK(0x1019, 0x0f69, "Coeus G610P", ALC880_FIXUP_W810),
4605 SND_PCI_QUIRK(0x1043, 0x1964, "ASUS Z71V", ALC880_FIXUP_Z71V),
4586 SND_PCI_QUIRK_VENDOR(0x1558, "Clevo", ALC880_FIXUP_EAPD_COEF), 4606 SND_PCI_QUIRK_VENDOR(0x1558, "Clevo", ALC880_FIXUP_EAPD_COEF),
4587 SND_PCI_QUIRK(0x1584, 0x9050, "Uniwill", ALC880_FIXUP_UNIWILL_DIG), 4607 SND_PCI_QUIRK(0x1584, 0x9050, "Uniwill", ALC880_FIXUP_UNIWILL_DIG),
4588 SND_PCI_QUIRK(0x1584, 0x9054, "Uniwill", ALC880_FIXUP_F1734), 4608 SND_PCI_QUIRK(0x1584, 0x9054, "Uniwill", ALC880_FIXUP_F1734),