diff options
author | Takashi Iwai <tiwai@suse.de> | 2015-06-29 02:38:02 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-07-21 13:10:02 -0400 |
commit | f367c3b94b1a20a27eb51a2646d7409a1da2d761 (patch) | |
tree | 075a85febaec390976cf82b8ef0197b1e66af085 /sound | |
parent | 4b461d112cdbca4183f4b2f0d67a081a650269ab (diff) |
ALSA: hda - Fix the dock headphone output on Fujitsu Lifebook E780
commit 4df3fd1700abbb53bd874143dfd1f9ac9e7cbf4b upstream.
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
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index fc67aeddd80e..944a87b395b8 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -4458,6 +4458,7 @@ enum { | |||
4458 | ALC269_FIXUP_LIFEBOOK, | 4458 | ALC269_FIXUP_LIFEBOOK, |
4459 | ALC269_FIXUP_LIFEBOOK_EXTMIC, | 4459 | ALC269_FIXUP_LIFEBOOK_EXTMIC, |
4460 | ALC269_FIXUP_LIFEBOOK_HP_PIN, | 4460 | ALC269_FIXUP_LIFEBOOK_HP_PIN, |
4461 | ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT, | ||
4461 | ALC269_FIXUP_AMIC, | 4462 | ALC269_FIXUP_AMIC, |
4462 | ALC269_FIXUP_DMIC, | 4463 | ALC269_FIXUP_DMIC, |
4463 | ALC269VB_FIXUP_AMIC, | 4464 | ALC269VB_FIXUP_AMIC, |
@@ -4627,6 +4628,10 @@ static const struct hda_fixup alc269_fixups[] = { | |||
4627 | { } | 4628 | { } |
4628 | }, | 4629 | }, |
4629 | }, | 4630 | }, |
4631 | [ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT] = { | ||
4632 | .type = HDA_FIXUP_FUNC, | ||
4633 | .v.func = alc269_fixup_pincfg_no_hp_to_lineout, | ||
4634 | }, | ||
4630 | [ALC269_FIXUP_AMIC] = { | 4635 | [ALC269_FIXUP_AMIC] = { |
4631 | .type = HDA_FIXUP_PINS, | 4636 | .type = HDA_FIXUP_PINS, |
4632 | .v.pins = (const struct hda_pintbl[]) { | 4637 | .v.pins = (const struct hda_pintbl[]) { |
@@ -5191,6 +5196,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { | |||
5191 | SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), | 5196 | SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), |
5192 | SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX), | 5197 | SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX), |
5193 | SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), | 5198 | SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), |
5199 | SND_PCI_QUIRK(0x10cf, 0x159f, "Lifebook E780", ALC269_FIXUP_LIFEBOOK_NO_HP_TO_LINEOUT), | ||
5194 | SND_PCI_QUIRK(0x10cf, 0x15dc, "Lifebook T731", ALC269_FIXUP_LIFEBOOK_HP_PIN), | 5200 | SND_PCI_QUIRK(0x10cf, 0x15dc, "Lifebook T731", ALC269_FIXUP_LIFEBOOK_HP_PIN), |
5195 | SND_PCI_QUIRK(0x10cf, 0x1757, "Lifebook E752", ALC269_FIXUP_LIFEBOOK_HP_PIN), | 5201 | SND_PCI_QUIRK(0x10cf, 0x1757, "Lifebook E752", ALC269_FIXUP_LIFEBOOK_HP_PIN), |
5196 | SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), | 5202 | SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), |