@@ -337,6 +337,7 @@ static void alc_fill_eapd_coef(struct hda_codec *codec)
337337 case 0x10ec0288 :
338338 case 0x10ec0295 :
339339 case 0x10ec0298 :
340+ case 0x10ec0299 :
340341 alc_update_coef_idx (codec , 0x10 , 1 <<9 , 0 );
341342 break ;
342343 case 0x10ec0285 :
@@ -912,6 +913,7 @@ static struct alc_codec_rename_pci_table rename_pci_tbl[] = {
912913 { 0x10ec0256 , 0x1028 , 0 , "ALC3246" },
913914 { 0x10ec0225 , 0x1028 , 0 , "ALC3253" },
914915 { 0x10ec0295 , 0x1028 , 0 , "ALC3254" },
916+ { 0x10ec0299 , 0x1028 , 0 , "ALC3271" },
915917 { 0x10ec0670 , 0x1025 , 0 , "ALC669X" },
916918 { 0x10ec0676 , 0x1025 , 0 , "ALC679X" },
917919 { 0x10ec0282 , 0x1043 , 0 , "ALC3229" },
@@ -3716,6 +3718,7 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)
37163718 break ;
37173719 case 0x10ec0225 :
37183720 case 0x10ec0295 :
3721+ case 0x10ec0299 :
37193722 alc_process_coef_fw (codec , coef0225 );
37203723 break ;
37213724 case 0x10ec0867 :
@@ -3823,6 +3826,7 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
38233826 break ;
38243827 case 0x10ec0225 :
38253828 case 0x10ec0295 :
3829+ case 0x10ec0299 :
38263830 alc_update_coef_idx (codec , 0x45 , 0x3f <<10 , 0x31 <<10 );
38273831 snd_hda_set_pin_ctl_cache (codec , hp_pin , 0 );
38283832 alc_process_coef_fw (codec , coef0225 );
@@ -3881,6 +3885,7 @@ static void alc_headset_mode_default(struct hda_codec *codec)
38813885 switch (codec -> core .vendor_id ) {
38823886 case 0x10ec0225 :
38833887 case 0x10ec0295 :
3888+ case 0x10ec0299 :
38843889 alc_process_coef_fw (codec , coef0225 );
38853890 break ;
38863891 case 0x10ec0255 :
@@ -3996,6 +4001,7 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)
39964001 break ;
39974002 case 0x10ec0225 :
39984003 case 0x10ec0295 :
4004+ case 0x10ec0299 :
39994005 alc_process_coef_fw (codec , coef0225 );
40004006 break ;
40014007 case 0x10ec0867 :
@@ -4089,6 +4095,7 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)
40894095 break ;
40904096 case 0x10ec0225 :
40914097 case 0x10ec0295 :
4098+ case 0x10ec0299 :
40924099 alc_process_coef_fw (codec , coef0225 );
40934100 break ;
40944101 }
@@ -4173,6 +4180,7 @@ static void alc_determine_headset_type(struct hda_codec *codec)
41734180 break ;
41744181 case 0x10ec0225 :
41754182 case 0x10ec0295 :
4183+ case 0x10ec0299 :
41764184 alc_process_coef_fw (codec , coef0225 );
41774185 msleep (800 );
41784186 val = alc_read_coef_idx (codec , 0x46 );
@@ -6219,6 +6227,7 @@ static int patch_alc269(struct hda_codec *codec)
62196227 break ;
62206228 case 0x10ec0225 :
62216229 case 0x10ec0295 :
6230+ case 0x10ec0299 :
62226231 spec -> codec_variant = ALC269_TYPE_ALC225 ;
62236232 break ;
62246233 case 0x10ec0234 :
@@ -7256,6 +7265,7 @@ static const struct hda_device_id snd_hda_id_realtek[] = {
72567265 HDA_CODEC_ENTRY (0x10ec0294 , "ALC294" , patch_alc269 ),
72577266 HDA_CODEC_ENTRY (0x10ec0295 , "ALC295" , patch_alc269 ),
72587267 HDA_CODEC_ENTRY (0x10ec0298 , "ALC298" , patch_alc269 ),
7268+ HDA_CODEC_ENTRY (0x10ec0299 , "ALC299" , patch_alc269 ),
72597269 HDA_CODEC_REV_ENTRY (0x10ec0861 , 0x100340 , "ALC660" , patch_alc861 ),
72607270 HDA_CODEC_ENTRY (0x10ec0660 , "ALC660-VD" , patch_alc861vd ),
72617271 HDA_CODEC_ENTRY (0x10ec0861 , "ALC861" , patch_alc861 ),
0 commit comments