aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-04-08 14:47:55 -0400
committerTakashi Iwai <tiwai@suse.de>2015-04-08 14:52:52 -0400
commitcc7016ab1a22fb26f388c2fb2b692b89897cbc3e (patch)
tree602600afd547d9fdf68ac60e8a6a8ecb3c9797c8 /sound/pci
parenta053fc318bc5d28cd25168c948255fd48a29ea26 (diff)
ALSA: hda - Fix headphone pin config for Lifebook T731
Some BIOS version of Fujitsu Lifebook T731 seems to set up the headphone pin (0x21) without the assoc number 0x0f while it's set only to the output on the docking port (0x1a). With the recent commit [03ad6a8c93b6: ALSA: hda - Fix "PCM" name being used on one DAC when there are two DACs], this resulted in the weird mixer element mapping where the headphone on the laptop is assigned as a shared volume with the speaker and the docking port is assigned as an individual headphone. This patch improves the situation by correcting the headphone pin config to the more appropriate value. Reported-and-tested-by: Taylor Smock <smocktaylor@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/patch_realtek.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index a07da0bbb2b4..f9d12c0a7e5a 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4372,6 +4372,7 @@ enum {
4372 ALC269_FIXUP_QUANTA_MUTE, 4372 ALC269_FIXUP_QUANTA_MUTE,
4373 ALC269_FIXUP_LIFEBOOK, 4373 ALC269_FIXUP_LIFEBOOK,
4374 ALC269_FIXUP_LIFEBOOK_EXTMIC, 4374 ALC269_FIXUP_LIFEBOOK_EXTMIC,
4375 ALC269_FIXUP_LIFEBOOK_HP_PIN,
4375 ALC269_FIXUP_AMIC, 4376 ALC269_FIXUP_AMIC,
4376 ALC269_FIXUP_DMIC, 4377 ALC269_FIXUP_DMIC,
4377 ALC269VB_FIXUP_AMIC, 4378 ALC269VB_FIXUP_AMIC,
@@ -4525,6 +4526,13 @@ static const struct hda_fixup alc269_fixups[] = {
4525 { } 4526 { }
4526 }, 4527 },
4527 }, 4528 },
4529 [ALC269_FIXUP_LIFEBOOK_HP_PIN] = {
4530 .type = HDA_FIXUP_PINS,
4531 .v.pins = (const struct hda_pintbl[]) {
4532 { 0x21, 0x0221102f }, /* HP out */
4533 { }
4534 },
4535 },
4528 [ALC269_FIXUP_AMIC] = { 4536 [ALC269_FIXUP_AMIC] = {
4529 .type = HDA_FIXUP_PINS, 4537 .type = HDA_FIXUP_PINS,
4530 .v.pins = (const struct hda_pintbl[]) { 4538 .v.pins = (const struct hda_pintbl[]) {
@@ -5018,6 +5026,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
5018 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), 5026 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),
5019 SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX), 5027 SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX),
5020 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), 5028 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK),
5029 SND_PCI_QUIRK(0x10cf, 0x15dc, "Lifebook T731", ALC269_FIXUP_LIFEBOOK_HP_PIN),
5021 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), 5030 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC),
5022 SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC), 5031 SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC),
5023 SND_PCI_QUIRK(0x1458, 0xfa53, "Gigabyte BXBT-2807", ALC283_FIXUP_BXBT2807_MIC), 5032 SND_PCI_QUIRK(0x1458, 0xfa53, "Gigabyte BXBT-2807", ALC283_FIXUP_BXBT2807_MIC),