diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-02-17 10:33:56 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-02-17 11:59:00 -0500 |
commit | f02aab5d7fd53da95a78bb27bfbacc972ed75c10 (patch) | |
tree | bb88156e75094e29a5af87ae1765c5e889212005 /sound/pci/hda/patch_realtek.c | |
parent | dc6af52dea5ada1269095cad5ed2c04e92114399 (diff) |
ALSA: hda/realtek - Rewrite ALC880 model=w810 with auto-parser
The Medion W810 with ALC880 has a typical BIOS bug, copying the
pin-defaults without disabling the unused pins. At least, the pin
0x17 must be disabled. Also, it requires GPIO-2 setup.
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.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index a39146528c24..1cad6748e337 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -4405,6 +4405,7 @@ enum { | |||
4405 | ALC880_FIXUP_GPIO2, | 4405 | ALC880_FIXUP_GPIO2, |
4406 | ALC880_FIXUP_MEDION_RIM, | 4406 | ALC880_FIXUP_MEDION_RIM, |
4407 | ALC880_FIXUP_LG, | 4407 | ALC880_FIXUP_LG, |
4408 | ALC880_FIXUP_W810, | ||
4408 | }; | 4409 | }; |
4409 | 4410 | ||
4410 | static const struct alc_fixup alc880_fixups[] = { | 4411 | static const struct alc_fixup alc880_fixups[] = { |
@@ -4432,9 +4433,21 @@ static const struct alc_fixup alc880_fixups[] = { | |||
4432 | { } | 4433 | { } |
4433 | } | 4434 | } |
4434 | }, | 4435 | }, |
4436 | [ALC880_FIXUP_W810] = { | ||
4437 | .type = ALC_FIXUP_PINS, | ||
4438 | .v.pins = (const struct alc_pincfg[]) { | ||
4439 | /* disable bogus unused pins */ | ||
4440 | { 0x17, 0x411111f0 }, | ||
4441 | { } | ||
4442 | }, | ||
4443 | .chained = true, | ||
4444 | .chain_id = ALC880_FIXUP_GPIO2, | ||
4445 | }, | ||
4435 | }; | 4446 | }; |
4436 | 4447 | ||
4437 | static const struct snd_pci_quirk alc880_fixup_tbl[] = { | 4448 | static const struct snd_pci_quirk alc880_fixup_tbl[] = { |
4449 | SND_PCI_QUIRK(0x1019, 0x0f69, "Coeus G610P", ALC880_FIXUP_W810), | ||
4450 | SND_PCI_QUIRK(0x161f, 0x203d, "W810", ALC880_FIXUP_W810), | ||
4438 | SND_PCI_QUIRK(0x161f, 0x205d, "Medion Rim 2150", ALC880_FIXUP_MEDION_RIM), | 4451 | SND_PCI_QUIRK(0x161f, 0x205d, "Medion Rim 2150", ALC880_FIXUP_MEDION_RIM), |
4439 | SND_PCI_QUIRK(0x1854, 0x003b, "LG", ALC880_FIXUP_LG), | 4452 | SND_PCI_QUIRK(0x1854, 0x003b, "LG", ALC880_FIXUP_LG), |
4440 | SND_PCI_QUIRK(0x1854, 0x005f, "LG P1 Express", ALC880_FIXUP_LG), | 4453 | SND_PCI_QUIRK(0x1854, 0x005f, "LG P1 Express", ALC880_FIXUP_LG), |