aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorKailang Yang <kailang@realtek.com>2011-05-18 05:51:15 -0400
committerTakashi Iwai <tiwai@suse.de>2011-05-18 05:52:05 -0400
commitb478b998447d3eb95e03beab1ad132e3e6bc74d2 (patch)
treee600a40647383595e0153aca029ef0e5cac57e1e /sound
parent20c304ed84e05a91b2acae36d428d621d3c1d1c6 (diff)
ALSA: hda - Add support of ALC898/899 codec
These are compatible with ALC882 codec. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_realtek.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index cee89b1ef393..fbf2d437e8c4 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -19610,6 +19610,15 @@ static int patch_alc888(struct hda_codec *codec)
19610 return patch_alc882(codec); 19610 return patch_alc882(codec);
19611} 19611}
19612 19612
19613static int patch_alc899(struct hda_codec *codec)
19614{
19615 if ((alc_read_coef_idx(codec, 0) & 0x2000) != 0x2000) {
19616 kfree(codec->chip_name);
19617 codec->chip_name = kstrdup("ALC898", GFP_KERNEL);
19618 }
19619 return patch_alc882(codec);
19620}
19621
19613/* 19622/*
19614 * ALC680 support 19623 * ALC680 support
19615 */ 19624 */
@@ -20097,6 +20106,7 @@ static const struct hda_codec_preset snd_hda_preset_realtek[] = {
20097 { .id = 0x10ec0888, .name = "ALC888", .patch = patch_alc888 }, 20106 { .id = 0x10ec0888, .name = "ALC888", .patch = patch_alc888 },
20098 { .id = 0x10ec0889, .name = "ALC889", .patch = patch_alc882 }, 20107 { .id = 0x10ec0889, .name = "ALC889", .patch = patch_alc882 },
20099 { .id = 0x10ec0892, .name = "ALC892", .patch = patch_alc662 }, 20108 { .id = 0x10ec0892, .name = "ALC892", .patch = patch_alc662 },
20109 { .id = 0x10ec0899, .name = "ALC899", .patch = patch_alc899 },
20100 {} /* terminator */ 20110 {} /* terminator */
20101}; 20111};
20102 20112