@@ -335,6 +335,7 @@ static void alc_fill_eapd_coef(struct hda_codec *codec)
335335 case 0x10ec0283 :
336336 case 0x10ec0286 :
337337 case 0x10ec0288 :
338+ case 0x10ec0295 :
338339 case 0x10ec0298 :
339340 alc_update_coef_idx (codec , 0x10 , 1 <<9 , 0 );
340341 break ;
@@ -907,6 +908,7 @@ static struct alc_codec_rename_pci_table rename_pci_tbl[] = {
907908 { 0x10ec0298 , 0x1028 , 0 , "ALC3266" },
908909 { 0x10ec0256 , 0x1028 , 0 , "ALC3246" },
909910 { 0x10ec0225 , 0x1028 , 0 , "ALC3253" },
911+ { 0x10ec0295 , 0x1028 , 0 , "ALC3254" },
910912 { 0x10ec0670 , 0x1025 , 0 , "ALC669X" },
911913 { 0x10ec0676 , 0x1025 , 0 , "ALC679X" },
912914 { 0x10ec0282 , 0x1043 , 0 , "ALC3229" },
@@ -3697,6 +3699,7 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)
36973699 alc_process_coef_fw (codec , coef0668 );
36983700 break ;
36993701 case 0x10ec0225 :
3702+ case 0x10ec0295 :
37003703 alc_process_coef_fw (codec , coef0225 );
37013704 break ;
37023705 }
@@ -3797,6 +3800,7 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
37973800 snd_hda_set_pin_ctl_cache (codec , mic_pin , PIN_VREF50 );
37983801 break ;
37993802 case 0x10ec0225 :
3803+ case 0x10ec0295 :
38003804 alc_update_coef_idx (codec , 0x45 , 0x3f <<10 , 0x31 <<10 );
38013805 snd_hda_set_pin_ctl_cache (codec , hp_pin , 0 );
38023806 alc_process_coef_fw (codec , coef0225 );
@@ -3854,6 +3858,7 @@ static void alc_headset_mode_default(struct hda_codec *codec)
38543858
38553859 switch (codec -> core .vendor_id ) {
38563860 case 0x10ec0225 :
3861+ case 0x10ec0295 :
38573862 alc_process_coef_fw (codec , coef0225 );
38583863 break ;
38593864 case 0x10ec0255 :
@@ -3957,6 +3962,7 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)
39573962 alc_process_coef_fw (codec , coef0688 );
39583963 break ;
39593964 case 0x10ec0225 :
3965+ case 0x10ec0295 :
39603966 alc_process_coef_fw (codec , coef0225 );
39613967 break ;
39623968 }
@@ -4038,6 +4044,7 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)
40384044 alc_process_coef_fw (codec , coef0688 );
40394045 break ;
40404046 case 0x10ec0225 :
4047+ case 0x10ec0295 :
40414048 alc_process_coef_fw (codec , coef0225 );
40424049 break ;
40434050 }
@@ -4121,6 +4128,7 @@ static void alc_determine_headset_type(struct hda_codec *codec)
41214128 is_ctia = (val & 0x1c02 ) == 0x1c02 ;
41224129 break ;
41234130 case 0x10ec0225 :
4131+ case 0x10ec0295 :
41244132 alc_process_coef_fw (codec , coef0225 );
41254133 msleep (800 );
41264134 val = alc_read_coef_idx (codec , 0x46 );
@@ -6034,6 +6042,7 @@ static int patch_alc269(struct hda_codec *codec)
60346042 alc_update_coef_idx (codec , 0x36 , 1 << 13 , 1 << 5 ); /* Switch pcbeep path to Line in path*/
60356043 break ;
60366044 case 0x10ec0225 :
6045+ case 0x10ec0295 :
60376046 spec -> codec_variant = ALC269_TYPE_ALC225 ;
60386047 break ;
60396048 case 0x10ec0234 :
@@ -6980,6 +6989,7 @@ static const struct hda_device_id snd_hda_id_realtek[] = {
69806989 HDA_CODEC_ENTRY (0x10ec0292 , "ALC292" , patch_alc269 ),
69816990 HDA_CODEC_ENTRY (0x10ec0293 , "ALC293" , patch_alc269 ),
69826991 HDA_CODEC_ENTRY (0x10ec0294 , "ALC294" , patch_alc269 ),
6992+ HDA_CODEC_ENTRY (0x10ec0295 , "ALC295" , patch_alc269 ),
69836993 HDA_CODEC_ENTRY (0x10ec0298 , "ALC298" , patch_alc269 ),
69846994 HDA_CODEC_REV_ENTRY (0x10ec0861 , 0x100340 , "ALC660" , patch_alc861 ),
69856995 HDA_CODEC_ENTRY (0x10ec0660 , "ALC660-VD" , patch_alc861vd ),
0 commit comments