aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorDavid Henningsson <david.henningsson@canonical.com>2013-10-11 04:18:45 -0400
committerTakashi Iwai <tiwai@suse.de>2013-10-11 04:23:42 -0400
commit88cfcf86aa3ada84d97195bcad74f4dadb4ae23b (patch)
tree41f692e4f3462bf5bd732d2e41770b3462414071 /sound
parentc6cc3d58b4042f5cadae653ff8d3df26af1a0169 (diff)
ALSA: hda - Fix microphone for Sony VAIO Pro 13 (Haswell model)
The external mic showed up with a precense detect of "always present", essentially disabling the internal mic. Therefore turn off presence detection for this pin. Note: The external mic seems not yet working, but an internal mic is certainly better than no mic at all. Cc: stable@vger.kernel.org BugLink: https://bugs.launchpad.net/bugs/1227093 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-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 ed9deb66f593..ae847fe006c8 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -3528,6 +3528,7 @@ enum {
3528 ALC269_FIXUP_HP_GPIO_LED, 3528 ALC269_FIXUP_HP_GPIO_LED,
3529 ALC269_FIXUP_INV_DMIC, 3529 ALC269_FIXUP_INV_DMIC,
3530 ALC269_FIXUP_LENOVO_DOCK, 3530 ALC269_FIXUP_LENOVO_DOCK,
3531 ALC286_FIXUP_SONY_MIC_NO_PRESENCE,
3531 ALC269_FIXUP_PINCFG_NO_HP_TO_LINEOUT, 3532 ALC269_FIXUP_PINCFG_NO_HP_TO_LINEOUT,
3532 ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, 3533 ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
3533 ALC269_FIXUP_DELL2_MIC_NO_PRESENCE, 3534 ALC269_FIXUP_DELL2_MIC_NO_PRESENCE,
@@ -3740,6 +3741,13 @@ static const struct hda_fixup alc269_fixups[] = {
3740 .type = HDA_FIXUP_FUNC, 3741 .type = HDA_FIXUP_FUNC,
3741 .v.func = alc_fixup_headset_mode_no_hp_mic, 3742 .v.func = alc_fixup_headset_mode_no_hp_mic,
3742 }, 3743 },
3744 [ALC286_FIXUP_SONY_MIC_NO_PRESENCE] = {
3745 .type = HDA_FIXUP_PINS,
3746 .v.pins = (const struct hda_pintbl[]) {
3747 { 0x18, 0x01a1913c }, /* use as headset mic, without its own jack detect */
3748 { }
3749 },
3750 },
3743 [ALC269_FIXUP_ASUS_X101_FUNC] = { 3751 [ALC269_FIXUP_ASUS_X101_FUNC] = {
3744 .type = HDA_FIXUP_FUNC, 3752 .type = HDA_FIXUP_FUNC,
3745 .v.func = alc269_fixup_x101_headset_mic, 3753 .v.func = alc269_fixup_x101_headset_mic,
@@ -3894,6 +3902,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
3894 SND_PCI_QUIRK(0x1043, 0x8398, "ASUS P1005", ALC269_FIXUP_STEREO_DMIC), 3902 SND_PCI_QUIRK(0x1043, 0x8398, "ASUS P1005", ALC269_FIXUP_STEREO_DMIC),
3895 SND_PCI_QUIRK(0x1043, 0x83ce, "ASUS P1005", ALC269_FIXUP_STEREO_DMIC), 3903 SND_PCI_QUIRK(0x1043, 0x83ce, "ASUS P1005", ALC269_FIXUP_STEREO_DMIC),
3896 SND_PCI_QUIRK(0x1043, 0x8516, "ASUS X101CH", ALC269_FIXUP_ASUS_X101), 3904 SND_PCI_QUIRK(0x1043, 0x8516, "ASUS X101CH", ALC269_FIXUP_ASUS_X101),
3905 SND_PCI_QUIRK(0x104d, 0x90b6, "Sony VAIO Pro 13", ALC286_FIXUP_SONY_MIC_NO_PRESENCE),
3897 SND_PCI_QUIRK(0x104d, 0x9073, "Sony VAIO", ALC275_FIXUP_SONY_VAIO_GPIO2), 3906 SND_PCI_QUIRK(0x104d, 0x9073, "Sony VAIO", ALC275_FIXUP_SONY_VAIO_GPIO2),
3898 SND_PCI_QUIRK(0x104d, 0x907b, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), 3907 SND_PCI_QUIRK(0x104d, 0x907b, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),
3899 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), 3908 SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),