|
@@ -3801,6 +3801,10 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
|
|
|
|
|
|
static void alc_headset_mode_default(struct hda_codec *codec)
|
|
|
{
|
|
|
+ static struct coef_fw coef0225[] = {
|
|
|
+ UPDATE_COEF(0x45, 0x3f<<10, 0x34<<10),
|
|
|
+ {}
|
|
|
+ };
|
|
|
static struct coef_fw coef0255[] = {
|
|
|
WRITE_COEF(0x45, 0xc089),
|
|
|
WRITE_COEF(0x45, 0xc489),
|
|
@@ -3842,6 +3846,9 @@ static void alc_headset_mode_default(struct hda_codec *codec)
|
|
|
};
|
|
|
|
|
|
switch (codec->core.vendor_id) {
|
|
|
+ case 0x10ec0225:
|
|
|
+ alc_process_coef_fw(codec, coef0225);
|
|
|
+ break;
|
|
|
case 0x10ec0255:
|
|
|
case 0x10ec0256:
|
|
|
alc_process_coef_fw(codec, coef0255);
|
|
@@ -4749,6 +4756,9 @@ enum {
|
|
|
ALC256_FIXUP_DELL_XPS_13_HEADPHONE_NOISE,
|
|
|
ALC293_FIXUP_LENOVO_SPK_NOISE,
|
|
|
ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY,
|
|
|
+ ALC255_FIXUP_DELL_SPK_NOISE,
|
|
|
+ ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
+ ALC280_FIXUP_HP_HEADSET_MIC,
|
|
|
};
|
|
|
|
|
|
static const struct hda_fixup alc269_fixups[] = {
|
|
@@ -5368,6 +5378,29 @@ static const struct hda_fixup alc269_fixups[] = {
|
|
|
.type = HDA_FIXUP_FUNC,
|
|
|
.v.func = alc233_fixup_lenovo_line2_mic_hotkey,
|
|
|
},
|
|
|
+ [ALC255_FIXUP_DELL_SPK_NOISE] = {
|
|
|
+ .type = HDA_FIXUP_FUNC,
|
|
|
+ .v.func = alc_fixup_disable_aamix,
|
|
|
+ .chained = true,
|
|
|
+ .chain_id = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE
|
|
|
+ },
|
|
|
+ [ALC225_FIXUP_DELL1_MIC_NO_PRESENCE] = {
|
|
|
+ .type = HDA_FIXUP_VERBS,
|
|
|
+ .v.verbs = (const struct hda_verb[]) {
|
|
|
+ /* Disable pass-through path for FRONT 14h */
|
|
|
+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x36 },
|
|
|
+ { 0x20, AC_VERB_SET_PROC_COEF, 0x57d7 },
|
|
|
+ {}
|
|
|
+ },
|
|
|
+ .chained = true,
|
|
|
+ .chain_id = ALC269_FIXUP_DELL1_MIC_NO_PRESENCE
|
|
|
+ },
|
|
|
+ [ALC280_FIXUP_HP_HEADSET_MIC] = {
|
|
|
+ .type = HDA_FIXUP_FUNC,
|
|
|
+ .v.func = alc_fixup_disable_aamix,
|
|
|
+ .chained = true,
|
|
|
+ .chain_id = ALC269_FIXUP_HEADSET_MIC,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
|
@@ -5410,6 +5443,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
|
|
SND_PCI_QUIRK(0x1028, 0x06df, "Dell", ALC293_FIXUP_DISABLE_AAMIX_MULTIJACK),
|
|
|
SND_PCI_QUIRK(0x1028, 0x06e0, "Dell", ALC293_FIXUP_DISABLE_AAMIX_MULTIJACK),
|
|
|
SND_PCI_QUIRK(0x1028, 0x0704, "Dell XPS 13", ALC256_FIXUP_DELL_XPS_13_HEADPHONE_NOISE),
|
|
|
+ SND_PCI_QUIRK(0x1028, 0x0725, "Dell Inspiron 3162", ALC255_FIXUP_DELL_SPK_NOISE),
|
|
|
SND_PCI_QUIRK(0x1028, 0x164a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE),
|
|
|
SND_PCI_QUIRK(0x1028, 0x164b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE),
|
|
|
SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2),
|
|
@@ -5470,6 +5504,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
|
|
SND_PCI_QUIRK(0x103c, 0x2335, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
|
|
|
SND_PCI_QUIRK(0x103c, 0x2336, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
|
|
|
SND_PCI_QUIRK(0x103c, 0x2337, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1),
|
|
|
+ SND_PCI_QUIRK(0x103c, 0x221c, "HP EliteBook 755 G2", ALC280_FIXUP_HP_HEADSET_MIC),
|
|
|
SND_PCI_QUIRK(0x1043, 0x103f, "ASUS TX300", ALC282_FIXUP_ASUS_TX300),
|
|
|
SND_PCI_QUIRK(0x1043, 0x106d, "Asus K53BE", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
|
|
|
SND_PCI_QUIRK(0x1043, 0x115d, "Asus 1015E", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
|
|
@@ -5638,10 +5673,10 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
|
|
|
{0x21, 0x03211020}
|
|
|
|
|
|
static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
|
|
|
- SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
+ SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
ALC225_STANDARD_PINS,
|
|
|
{0x14, 0x901701a0}),
|
|
|
- SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
+ SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
ALC225_STANDARD_PINS,
|
|
|
{0x14, 0x901701b0}),
|
|
|
SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
|