aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorDaniel Drake <drake@endlessm.com>2014-07-22 05:58:29 -0400
committerTakashi Iwai <tiwai@suse.de>2014-07-22 06:48:04 -0400
commit9dc12862da9d56ef4da646ba540c4f58b78738fc (patch)
tree60d07a46f8bcc3ba1e3169c19da0814e67c9f629 /sound/pci
parent423044744aa4c250058e976474856a7a41972182 (diff)
ALSA: hda - Add mic fixup for Gigabyte BXBT-2807
The Gigabyte BRIX BXBT-2707 is a mini-PC with Realtek ALC283 HDA, exposing a single headset jack. However, the default pin config information only suggests that one pin is connected: a HP out jack (pin 0x21, default config 0x04211010). The microphone input is behind pin 0x19, which has default config 0x411111f0 (i.e. unused), so it does not show up in userspace, and no microphone input is possible via the headset. Override the pin config so that the headset mic can be used. [rearranged the fixup entry position by tiwai] Signed-off-by: Daniel Drake <drake@endlessm.com> 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 6f204ba02f62..124272bc935b 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4358,6 +4358,7 @@ enum {
4358 ALC255_FIXUP_HEADSET_MODE_NO_HP_MIC, 4358 ALC255_FIXUP_HEADSET_MODE_NO_HP_MIC,
4359 ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, 4359 ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
4360 ALC292_FIXUP_TPT440_DOCK, 4360 ALC292_FIXUP_TPT440_DOCK,
4361 ALC283_FIXUP_BXBT2807_MIC,
4361}; 4362};
4362 4363
4363static const struct hda_fixup alc269_fixups[] = { 4364static const struct hda_fixup alc269_fixups[] = {
@@ -4792,6 +4793,13 @@ static const struct hda_fixup alc269_fixups[] = {
4792 .chained = true, 4793 .chained = true,
4793 .chain_id = ALC269_FIXUP_LIMIT_INT_MIC_BOOST 4794 .chain_id = ALC269_FIXUP_LIMIT_INT_MIC_BOOST
4794 }, 4795 },
4796 [ALC283_FIXUP_BXBT2807_MIC] = {
4797 .type = HDA_FIXUP_PINS,
4798 .v.pins = (const struct hda_pintbl[]) {
4799 { 0x19, 0x04a110f0 },
4800 { },
4801 },
4802 },
4795}; 4803};
4796 4804
4797static const struct snd_pci_quirk alc269_fixup_tbl[] = { 4805static const struct snd_pci_quirk alc269_fixup_tbl[] = {
@@ -4987,6 +4995,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
4987 SND_PCI_QUIRK_VENDOR(0x104d, "Sony VAIO", ALC269_FIXUP_SONY_VAIO), 4995 SND_PCI_QUIRK_VENDOR(0x104d, "Sony VAIO", ALC269_FIXUP_SONY_VAIO),
4988 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), 4996 SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK),
4989 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), 4997 SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC),
4998 SND_PCI_QUIRK(0x1458, 0xfa53, "Gigabyte BXBT-2807", ALC283_FIXUP_BXBT2807_MIC),
4990 SND_PCI_QUIRK(0x17aa, 0x20f2, "Thinkpad SL410/510", ALC269_FIXUP_SKU_IGNORE), 4999 SND_PCI_QUIRK(0x17aa, 0x20f2, "Thinkpad SL410/510", ALC269_FIXUP_SKU_IGNORE),
4991 SND_PCI_QUIRK(0x17aa, 0x215e, "Thinkpad L512", ALC269_FIXUP_SKU_IGNORE), 5000 SND_PCI_QUIRK(0x17aa, 0x215e, "Thinkpad L512", ALC269_FIXUP_SKU_IGNORE),
4992 SND_PCI_QUIRK(0x17aa, 0x21b8, "Thinkpad Edge 14", ALC269_FIXUP_SKU_IGNORE), 5001 SND_PCI_QUIRK(0x17aa, 0x21b8, "Thinkpad Edge 14", ALC269_FIXUP_SKU_IGNORE),