summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-06-29 02:38:02 -0400
committerTakashi Iwai <tiwai@suse.de>2015-06-29 02:38:02 -0400
commit4df3fd1700abbb53bd874143dfd1f9ac9e7cbf4b (patch)
tree44e33d0d0dc9a1cfe429b4bb794e7226526ea6c4 /sound
parent7819717b11346b8a5420b223b46600e394049c66 (diff)
ALSA: hda - Fix the dock headphone output on Fujitsu Lifebook E780
Fujitsu Lifebook E780 sets the sequence number 0x0f to only only of the two headphones, thus the driver tries to assign another as the line-out, and this results in the inconsistent mapping between the created jack ctl and the actual I/O. Due to this, PulseAudio doesn't handle it properly and gets the silent output. The fix is to ignore the non-HP sequencer checks. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99681 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_realtek.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index cab09c42598b..dfa3852a3476 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4464,6 +4464,7 @@ enum {
4464 ALC269_FIXUP_LIFEBOOK, 4464 ALC269_FIXUP_LIFEBOOK,
4465 ALC269_FIXUP_LIFEBOOK_EXTMIC, 4465 ALC269_FIXUP_LIFEBOOK_EXTMIC,
4466 ALC269_FIXUP_LIFEBOOK_HP_PIN, 4466 ALC269_FIXUP_LIFEBOOK_HP_PIN,
4467 ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT,
4467 ALC269_FIXUP_AMIC, 4468 ALC269_FIXUP_AMIC,
4468 ALC269_FIXUP_DMIC, 4469 ALC269_FIXUP_DMIC,
4469 ALC269VB_FIXUP_AMIC, 4470 ALC269VB_FIXUP_AMIC,
@@ -4634,6 +4635,10 @@ static const struct hda_fixup alc269_fixups[] = {
4634 { } 4635 { }
4635 }, 4636 },
4636 }, 4637 },
4638 [ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT] = {
4639 .type = HDA_FIXUP_FUNC,
4640 .v.func = alc269_fixup_pincfg_no_hp_to_lineout,
4641 },
4637 [ALC269_FIXUP_AMIC] = { 4642 [ALC269_FIXUP_AMIC] = {
4638 .type = HDA_FIXUP_PINS, 4643 .type = HDA_FIXUP_PINS,
4639 .v.pins = (const struct hda_pintbl[]) { 4644 .v.pins = (const struct hda_pintbl[]) {
@@ -5208,6 +5213,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
5208 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), 5213 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),
5209 SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX), 5214 SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX),
5210 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), 5215 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK),
5216 SND_PCI_QUIRK(0x10cf, 0x159f, "Lifebook E780", ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT),
5211 SND_PCI_QUIRK(0x10cf, 0x15dc, "Lifebook T731", ALC269_FIXUP_LIFEBOOK_HP_PIN), 5217 SND_PCI_QUIRK(0x10cf, 0x15dc, "Lifebook T731", ALC269_FIXUP_LIFEBOOK_HP_PIN),
5212 SND_PCI_QUIRK(0x10cf, 0x1757, "Lifebook E752", ALC269_FIXUP_LIFEBOOK_HP_PIN), 5218 SND_PCI_QUIRK(0x10cf, 0x1757, "Lifebook E752", ALC269_FIXUP_LIFEBOOK_HP_PIN),
5213 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), 5219 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC),