Loading sound/pci/hda/patch_realtek.c +35 −12 Original line number Diff line number Diff line Loading @@ -1436,6 +1436,25 @@ static void alc_automute_amp_unsol_event(struct hda_codec *codec, alc_automute_amp(codec); } static void alc889_automute_init(struct hda_codec *codec) { struct alc_spec *spec = codec->spec; spec->autocfg.hp_pins[0] = 0x15; spec->autocfg.speaker_pins[0] = 0x14; spec->autocfg.speaker_pins[1] = 0x16; spec->autocfg.speaker_pins[2] = 0x17; spec->autocfg.speaker_pins[3] = 0x19; spec->autocfg.speaker_pins[4] = 0x1a; alc_automute_amp(codec); } static void alc889_intel_init_hook(struct hda_codec *codec) { alc889_coef_init(codec); alc889_automute_init(codec); } static void alc888_fujitsu_xa3530_init_hook(struct hda_codec *codec) { struct alc_spec *spec = codec->spec; Loading Loading @@ -6993,6 +7012,11 @@ static struct hda_verb alc889_eapd_verbs[] = { { } }; static struct hda_verb alc_hp15_unsol_verbs[] = { {0x15, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_HP_EVENT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {} }; static struct hda_verb alc885_init_verbs[] = { /* Front mixer: unmute input/output amp left and right (volume = 0) */ Loading @@ -7018,7 +7042,7 @@ static struct hda_verb alc885_init_verbs[] = { {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(3)}, /* Front HP Pin: output 0 (0x0c) */ {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, {0x15, AC_VERB_SET_CONNECT_SEL, 0x00}, /* Front Pin: output 0 (0x0c) */ Loading Loading @@ -8860,7 +8884,8 @@ static struct alc_config_preset alc882_presets[] = { }, [ALC889A_INTEL] = { .mixers = { alc885_8ch_intel_mixer, alc883_chmode_mixer }, .init_verbs = { alc885_init_verbs, alc885_init_input_verbs }, .init_verbs = { alc885_init_verbs, alc885_init_input_verbs, alc_hp15_unsol_verbs }, .num_dacs = ARRAY_SIZE(alc883_dac_nids), .dac_nids = alc883_dac_nids, .num_adc_nids = ARRAY_SIZE(alc889_adc_nids), Loading @@ -8872,12 +8897,14 @@ static struct alc_config_preset alc882_presets[] = { .channel_mode = alc889_8ch_intel_modes, .capsrc_nids = alc889_capsrc_nids, .input_mux = &alc889_capture_source, .init_hook = alc889_automute_init, .unsol_event = alc_automute_amp_unsol_event, .need_dac_fix = 1, }, [ALC889_INTEL] = { .mixers = { alc885_8ch_intel_mixer, alc883_chmode_mixer }, .init_verbs = { alc885_init_verbs, alc889_init_input_verbs, alc889_eapd_verbs }, alc889_eapd_verbs, alc_hp15_unsol_verbs}, .num_dacs = ARRAY_SIZE(alc883_dac_nids), .dac_nids = alc883_dac_nids, .num_adc_nids = ARRAY_SIZE(alc889_adc_nids), Loading @@ -8889,7 +8916,8 @@ static struct alc_config_preset alc882_presets[] = { .channel_mode = alc889_8ch_intel_modes, .capsrc_nids = alc889_capsrc_nids, .input_mux = &alc889_capture_source, .init_hook = alc889_coef_init, .init_hook = alc889_intel_init_hook, .unsol_event = alc_automute_amp_unsol_event, .need_dac_fix = 1, }, [ALC883_6ST_DIG] = { Loading Loading @@ -10121,12 +10149,6 @@ static struct hda_verb alc262_eapd_verbs[] = { { } }; static struct hda_verb alc262_hippo_unsol_verbs[] = { {0x15, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_HP_EVENT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {} }; static struct hda_verb alc262_hippo1_unsol_verbs[] = { {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0}, {0x1b, AC_VERB_SET_CONNECT_SEL, 0x00}, Loading Loading @@ -11168,7 +11190,7 @@ static struct alc_config_preset alc262_presets[] = { }, [ALC262_HIPPO] = { .mixers = { alc262_hippo_mixer }, .init_verbs = { alc262_init_verbs, alc262_hippo_unsol_verbs}, .init_verbs = { alc262_init_verbs, alc_hp15_unsol_verbs}, .num_dacs = ARRAY_SIZE(alc262_dac_nids), .dac_nids = alc262_dac_nids, .hp_nid = 0x03, Loading Loading @@ -11288,7 +11310,8 @@ static struct alc_config_preset alc262_presets[] = { }, [ALC262_BENQ_T31] = { .mixers = { alc262_benq_t31_mixer }, .init_verbs = { alc262_init_verbs, alc262_benq_t31_EAPD_verbs, alc262_hippo_unsol_verbs }, .init_verbs = { alc262_init_verbs, alc262_benq_t31_EAPD_verbs, alc_hp15_unsol_verbs }, .num_dacs = ARRAY_SIZE(alc262_dac_nids), .dac_nids = alc262_dac_nids, .hp_nid = 0x03, Loading Loading
sound/pci/hda/patch_realtek.c +35 −12 Original line number Diff line number Diff line Loading @@ -1436,6 +1436,25 @@ static void alc_automute_amp_unsol_event(struct hda_codec *codec, alc_automute_amp(codec); } static void alc889_automute_init(struct hda_codec *codec) { struct alc_spec *spec = codec->spec; spec->autocfg.hp_pins[0] = 0x15; spec->autocfg.speaker_pins[0] = 0x14; spec->autocfg.speaker_pins[1] = 0x16; spec->autocfg.speaker_pins[2] = 0x17; spec->autocfg.speaker_pins[3] = 0x19; spec->autocfg.speaker_pins[4] = 0x1a; alc_automute_amp(codec); } static void alc889_intel_init_hook(struct hda_codec *codec) { alc889_coef_init(codec); alc889_automute_init(codec); } static void alc888_fujitsu_xa3530_init_hook(struct hda_codec *codec) { struct alc_spec *spec = codec->spec; Loading Loading @@ -6993,6 +7012,11 @@ static struct hda_verb alc889_eapd_verbs[] = { { } }; static struct hda_verb alc_hp15_unsol_verbs[] = { {0x15, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_HP_EVENT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {} }; static struct hda_verb alc885_init_verbs[] = { /* Front mixer: unmute input/output amp left and right (volume = 0) */ Loading @@ -7018,7 +7042,7 @@ static struct hda_verb alc885_init_verbs[] = { {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(3)}, /* Front HP Pin: output 0 (0x0c) */ {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, {0x15, AC_VERB_SET_CONNECT_SEL, 0x00}, /* Front Pin: output 0 (0x0c) */ Loading Loading @@ -8860,7 +8884,8 @@ static struct alc_config_preset alc882_presets[] = { }, [ALC889A_INTEL] = { .mixers = { alc885_8ch_intel_mixer, alc883_chmode_mixer }, .init_verbs = { alc885_init_verbs, alc885_init_input_verbs }, .init_verbs = { alc885_init_verbs, alc885_init_input_verbs, alc_hp15_unsol_verbs }, .num_dacs = ARRAY_SIZE(alc883_dac_nids), .dac_nids = alc883_dac_nids, .num_adc_nids = ARRAY_SIZE(alc889_adc_nids), Loading @@ -8872,12 +8897,14 @@ static struct alc_config_preset alc882_presets[] = { .channel_mode = alc889_8ch_intel_modes, .capsrc_nids = alc889_capsrc_nids, .input_mux = &alc889_capture_source, .init_hook = alc889_automute_init, .unsol_event = alc_automute_amp_unsol_event, .need_dac_fix = 1, }, [ALC889_INTEL] = { .mixers = { alc885_8ch_intel_mixer, alc883_chmode_mixer }, .init_verbs = { alc885_init_verbs, alc889_init_input_verbs, alc889_eapd_verbs }, alc889_eapd_verbs, alc_hp15_unsol_verbs}, .num_dacs = ARRAY_SIZE(alc883_dac_nids), .dac_nids = alc883_dac_nids, .num_adc_nids = ARRAY_SIZE(alc889_adc_nids), Loading @@ -8889,7 +8916,8 @@ static struct alc_config_preset alc882_presets[] = { .channel_mode = alc889_8ch_intel_modes, .capsrc_nids = alc889_capsrc_nids, .input_mux = &alc889_capture_source, .init_hook = alc889_coef_init, .init_hook = alc889_intel_init_hook, .unsol_event = alc_automute_amp_unsol_event, .need_dac_fix = 1, }, [ALC883_6ST_DIG] = { Loading Loading @@ -10121,12 +10149,6 @@ static struct hda_verb alc262_eapd_verbs[] = { { } }; static struct hda_verb alc262_hippo_unsol_verbs[] = { {0x15, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_HP_EVENT}, {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {} }; static struct hda_verb alc262_hippo1_unsol_verbs[] = { {0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0}, {0x1b, AC_VERB_SET_CONNECT_SEL, 0x00}, Loading Loading @@ -11168,7 +11190,7 @@ static struct alc_config_preset alc262_presets[] = { }, [ALC262_HIPPO] = { .mixers = { alc262_hippo_mixer }, .init_verbs = { alc262_init_verbs, alc262_hippo_unsol_verbs}, .init_verbs = { alc262_init_verbs, alc_hp15_unsol_verbs}, .num_dacs = ARRAY_SIZE(alc262_dac_nids), .dac_nids = alc262_dac_nids, .hp_nid = 0x03, Loading Loading @@ -11288,7 +11310,8 @@ static struct alc_config_preset alc262_presets[] = { }, [ALC262_BENQ_T31] = { .mixers = { alc262_benq_t31_mixer }, .init_verbs = { alc262_init_verbs, alc262_benq_t31_EAPD_verbs, alc262_hippo_unsol_verbs }, .init_verbs = { alc262_init_verbs, alc262_benq_t31_EAPD_verbs, alc_hp15_unsol_verbs }, .num_dacs = ARRAY_SIZE(alc262_dac_nids), .dac_nids = alc262_dac_nids, .hp_nid = 0x03, Loading