summaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorTienFu Chen <tienfu.chen@canonical.com>2015-01-20 09:06:21 -0500
committerTakashi Iwai <tiwai@suse.de>2015-01-20 09:09:19 -0500
commitb4b33f9d64c3edcdcbea874acdc1e9626fd961f1 (patch)
tree06d3e36253fbfae4020bb4e97d7ef8aae510be38 /sound/pci
parent3b15d0d505de859908ba2a6959db59c0aed6910a (diff)
ALSA: hda - Enable docking station for an HP machine
On this machine we need to inform the driver where the docking station pins are, because it has not been set up by BIOS. Tested-by: TienFu Chen <tienfu.chen@canonical.com> BugLink: https://bugs.launchpad.net/bugs/1412800 Signed-off-by: TienFu Chen <tienfu.chen@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/patch_realtek.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 1720f8a457d1..040306194e6d 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4417,6 +4417,7 @@ enum {
4417 ALC280_FIXUP_HP_GPIO4, 4417 ALC280_FIXUP_HP_GPIO4,
4418 ALC286_FIXUP_HP_GPIO_LED, 4418 ALC286_FIXUP_HP_GPIO_LED,
4419 ALC280_FIXUP_HP_GPIO2_MIC_HOTKEY, 4419 ALC280_FIXUP_HP_GPIO2_MIC_HOTKEY,
4420 ALC280_FIXUP_HP_DOCK_PINS,
4420}; 4421};
4421 4422
4422static const struct hda_fixup alc269_fixups[] = { 4423static const struct hda_fixup alc269_fixups[] = {
@@ -4894,6 +4895,17 @@ static const struct hda_fixup alc269_fixups[] = {
4894 .type = HDA_FIXUP_FUNC, 4895 .type = HDA_FIXUP_FUNC,
4895 .v.func = alc280_fixup_hp_gpio2_mic_hotkey, 4896 .v.func = alc280_fixup_hp_gpio2_mic_hotkey,
4896 }, 4897 },
4898 [ALC280_FIXUP_HP_DOCK_PINS] = {
4899 .type = HDA_FIXUP_PINS,
4900 .v.pins = (const struct hda_pintbl[]) {
4901 { 0x1b, 0x21011020 }, /* line-out */
4902 { 0x1a, 0x01a1903c }, /* headset mic */
4903 { 0x18, 0x2181103f }, /* line-in */
4904 { },
4905 },
4906 .chained = true,
4907 .chain_id = ALC280_FIXUP_HP_GPIO4
4908 },
4897}; 4909};
4898 4910
4899static const struct snd_pci_quirk alc269_fixup_tbl[] = { 4911static const struct snd_pci_quirk alc269_fixup_tbl[] = {
@@ -4937,6 +4949,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
4937 SND_PCI_QUIRK(0x103c, 0x226b, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1), 4949 SND_PCI_QUIRK(0x103c, 0x226b, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
4938 SND_PCI_QUIRK(0x103c, 0x226e, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1), 4950 SND_PCI_QUIRK(0x103c, 0x226e, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
4939 SND_PCI_QUIRK(0x103c, 0x2271, "HP", ALC286_FIXUP_HP_GPIO_LED), 4951 SND_PCI_QUIRK(0x103c, 0x2271, "HP", ALC286_FIXUP_HP_GPIO_LED),
4952 SND_PCI_QUIRK(0x103c, 0x2272, "HP", ALC280_FIXUP_HP_DOCK_PINS),
4940 SND_PCI_QUIRK(0x103c, 0x229e, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1), 4953 SND_PCI_QUIRK(0x103c, 0x229e, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
4941 SND_PCI_QUIRK(0x103c, 0x22b2, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1), 4954 SND_PCI_QUIRK(0x103c, 0x22b2, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
4942 SND_PCI_QUIRK(0x103c, 0x22b7, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1), 4955 SND_PCI_QUIRK(0x103c, 0x22b7, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),