aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/pci/hda/patch_sigmatel.c')
-rw-r--r--sound/pci/hda/patch_sigmatel.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index c16c5ba0fda0..78f12064b2bf 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -93,6 +93,7 @@ enum {
93 STAC_92HD83XXX_REF, 93 STAC_92HD83XXX_REF,
94 STAC_92HD83XXX_PWR_REF, 94 STAC_92HD83XXX_PWR_REF,
95 STAC_DELL_S14, 95 STAC_DELL_S14,
96 STAC_DELL_E6410,
96 STAC_92HD83XXX_HP, 97 STAC_92HD83XXX_HP,
97 STAC_HP_DV7_4000, 98 STAC_HP_DV7_4000,
98 STAC_92HD83XXX_MODELS 99 STAC_92HD83XXX_MODELS
@@ -1618,6 +1619,8 @@ static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
1618static struct snd_pci_quirk stac92hd73xx_codec_id_cfg_tbl[] = { 1619static struct snd_pci_quirk stac92hd73xx_codec_id_cfg_tbl[] = {
1619 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x02a1, 1620 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x02a1,
1620 "Alienware M17x", STAC_ALIENWARE_M17X), 1621 "Alienware M17x", STAC_ALIENWARE_M17X),
1622 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x043a,
1623 "Alienware M17x", STAC_ALIENWARE_M17X),
1621 {} /* terminator */ 1624 {} /* terminator */
1622}; 1625};
1623 1626
@@ -1633,6 +1636,13 @@ static unsigned int dell_s14_pin_configs[10] = {
1633 0x40f000f0, 0x40f000f0, 1636 0x40f000f0, 0x40f000f0,
1634}; 1637};
1635 1638
1639/* Deliberately turn off 0x0f (Dock Mic) to make it choose Int Mic instead */
1640static unsigned int dell_e6410_pin_configs[10] = {
1641 0x04a11020, 0x0421101f, 0x400000f0, 0x90170110,
1642 0x23011050, 0x40f000f0, 0x400000f0, 0x90a60130,
1643 0x40f000f0, 0x40f000f0,
1644};
1645
1636static unsigned int hp_dv7_4000_pin_configs[10] = { 1646static unsigned int hp_dv7_4000_pin_configs[10] = {
1637 0x03a12050, 0x0321201f, 0x40f000f0, 0x90170110, 1647 0x03a12050, 0x0321201f, 0x40f000f0, 0x90170110,
1638 0x40f000f0, 0x40f000f0, 0x90170110, 0xd5a30140, 1648 0x40f000f0, 0x40f000f0, 0x90170110, 0xd5a30140,
@@ -1643,6 +1653,7 @@ static unsigned int *stac92hd83xxx_brd_tbl[STAC_92HD83XXX_MODELS] = {
1643 [STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs, 1653 [STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs,
1644 [STAC_92HD83XXX_PWR_REF] = ref92hd83xxx_pin_configs, 1654 [STAC_92HD83XXX_PWR_REF] = ref92hd83xxx_pin_configs,
1645 [STAC_DELL_S14] = dell_s14_pin_configs, 1655 [STAC_DELL_S14] = dell_s14_pin_configs,
1656 [STAC_DELL_E6410] = dell_e6410_pin_configs,
1646 [STAC_HP_DV7_4000] = hp_dv7_4000_pin_configs, 1657 [STAC_HP_DV7_4000] = hp_dv7_4000_pin_configs,
1647}; 1658};
1648 1659
@@ -1651,6 +1662,7 @@ static const char *stac92hd83xxx_models[STAC_92HD83XXX_MODELS] = {
1651 [STAC_92HD83XXX_REF] = "ref", 1662 [STAC_92HD83XXX_REF] = "ref",
1652 [STAC_92HD83XXX_PWR_REF] = "mic-ref", 1663 [STAC_92HD83XXX_PWR_REF] = "mic-ref",
1653 [STAC_DELL_S14] = "dell-s14", 1664 [STAC_DELL_S14] = "dell-s14",
1665 [STAC_DELL_E6410] = "dell-e6410",
1654 [STAC_92HD83XXX_HP] = "hp", 1666 [STAC_92HD83XXX_HP] = "hp",
1655 [STAC_HP_DV7_4000] = "hp-dv7-4000", 1667 [STAC_HP_DV7_4000] = "hp-dv7-4000",
1656}; 1668};
@@ -1663,6 +1675,10 @@ static struct snd_pci_quirk stac92hd83xxx_cfg_tbl[] = {
1663 "DFI LanParty", STAC_92HD83XXX_REF), 1675 "DFI LanParty", STAC_92HD83XXX_REF),
1664 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x02ba, 1676 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x02ba,
1665 "unknown Dell", STAC_DELL_S14), 1677 "unknown Dell", STAC_DELL_S14),
1678 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x040a,
1679 "Dell E6410", STAC_DELL_E6410),
1680 SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x040b,
1681 "Dell E6510", STAC_DELL_E6410),
1666 SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_HP, 0xff00, 0x3600, 1682 SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_HP, 0xff00, 0x3600,
1667 "HP", STAC_92HD83XXX_HP), 1683 "HP", STAC_92HD83XXX_HP),
1668 {} /* terminator */ 1684 {} /* terminator */