aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorCharles Chin <Charles.Chin@idt.com>2011-11-02 02:56:58 -0400
committerTakashi Iwai <tiwai@suse.de>2011-11-02 02:56:58 -0400
commitad5d8755116b431f0709c745ee17cb567a478d43 (patch)
tree47c51609dec2f4576ac7dc5bca4a00e3b1259f99 /sound/pci
parent35c11777b906042eca9e6f1c03e464726c7faa07 (diff)
ALSA: hda - Add support for 92HD65 / 92HD66 family of codecs
These codecs have SPDIF-in, which is new to the 92HD83xxx compatible families, so a bit of logic is added to support them. Signed-off-by: Charles Chin <Charles.Chin@idt.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/patch_sigmatel.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index e826ff75548b..5961e727b2cf 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -5657,7 +5657,11 @@ again:
5657 } 5657 }
5658#endif 5658#endif
5659 5659
5660 err = stac92xx_parse_auto_config(codec, 0x1d, 0); 5660 /* 92HD65/66 series has S/PDIF-IN */
5661 if (codec->vendor_id >= 0x111d76e8 && codec->vendor_id <= 0x111d76f3)
5662 err = stac92xx_parse_auto_config(codec, 0x1d, 0x22);
5663 else
5664 err = stac92xx_parse_auto_config(codec, 0x1d, 0);
5661 if (!err) { 5665 if (!err) {
5662 if (spec->board_config < 0) { 5666 if (spec->board_config < 0) {
5663 printk(KERN_WARNING "hda_codec: No auto-config is " 5667 printk(KERN_WARNING "hda_codec: No auto-config is "
@@ -6547,6 +6551,18 @@ static const struct hda_codec_preset snd_hda_preset_sigmatel[] = {
6547 { .id = 0x111d76e3, .name = "92HD98BXX", .patch = patch_stac92hd83xxx}, 6551 { .id = 0x111d76e3, .name = "92HD98BXX", .patch = patch_stac92hd83xxx},
6548 { .id = 0x111d76e5, .name = "92HD99BXX", .patch = patch_stac92hd83xxx}, 6552 { .id = 0x111d76e5, .name = "92HD99BXX", .patch = patch_stac92hd83xxx},
6549 { .id = 0x111d76e7, .name = "92HD90BXX", .patch = patch_stac92hd83xxx}, 6553 { .id = 0x111d76e7, .name = "92HD90BXX", .patch = patch_stac92hd83xxx},
6554 { .id = 0x111d76e8, .name = "92HD66B1X5", .patch = patch_stac92hd83xxx},
6555 { .id = 0x111d76e9, .name = "92HD66B2X5", .patch = patch_stac92hd83xxx},
6556 { .id = 0x111d76ea, .name = "92HD66B3X5", .patch = patch_stac92hd83xxx},
6557 { .id = 0x111d76eb, .name = "92HD66C1X5", .patch = patch_stac92hd83xxx},
6558 { .id = 0x111d76ec, .name = "92HD66C2X5", .patch = patch_stac92hd83xxx},
6559 { .id = 0x111d76ed, .name = "92HD66C3X5", .patch = patch_stac92hd83xxx},
6560 { .id = 0x111d76ee, .name = "92HD66B1X3", .patch = patch_stac92hd83xxx},
6561 { .id = 0x111d76ef, .name = "92HD66B2X3", .patch = patch_stac92hd83xxx},
6562 { .id = 0x111d76f0, .name = "92HD66B3X3", .patch = patch_stac92hd83xxx},
6563 { .id = 0x111d76f1, .name = "92HD66C1X3", .patch = patch_stac92hd83xxx},
6564 { .id = 0x111d76f2, .name = "92HD66C2X3", .patch = patch_stac92hd83xxx},
6565 { .id = 0x111d76f3, .name = "92HD66C3/65", .patch = patch_stac92hd83xxx},
6550 {} /* terminator */ 6566 {} /* terminator */
6551}; 6567};
6552 6568