|
@@ -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);
|
|
@@ -4750,6 +4757,7 @@ enum {
|
|
|
ALC293_FIXUP_LENOVO_SPK_NOISE,
|
|
|
ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY,
|
|
|
ALC255_FIXUP_DELL_SPK_NOISE,
|
|
|
+ ALC225_FIXUP_DELL1_MIC_NO_PRESENCE,
|
|
|
};
|
|
|
|
|
|
static const struct hda_fixup alc269_fixups[] = {
|
|
@@ -5375,6 +5383,17 @@ static const struct hda_fixup alc269_fixups[] = {
|
|
|
.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
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
|
@@ -5646,10 +5665,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,
|