ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too
authorTakashi Iwai <tiwai@suse.de>
Sun, 5 Jan 2020 08:11:19 +0000 (09:11 +0100)
committerTakashi Iwai <tiwai@suse.de>
Sun, 5 Jan 2020 08:12:11 +0000 (09:12 +0100)
Dell E7xx laptops have also mic mute LED that is driven by the
dell-laptop platform driver.  Bind it with the capture control as
already done for other models.

A caveat is that the fixup hook for the mic mute LED has to be applied
at last, otherwise it results in the invalid override of the callback.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=205529
Link: https://lore.kernel.org/r/20200105081119.21396-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index 5bb1959..7fb3d68 100644 (file)
@@ -5844,6 +5844,7 @@ enum {
        ALC288_FIXUP_DELL1_MIC_NO_PRESENCE,
        ALC288_FIXUP_DELL_XPS_13,
        ALC288_FIXUP_DISABLE_AAMIX,
+       ALC292_FIXUP_DELL_E7X_AAMIX,
        ALC292_FIXUP_DELL_E7X,
        ALC292_FIXUP_DISABLE_AAMIX,
        ALC293_FIXUP_DISABLE_AAMIX_MULTIJACK,
@@ -6536,12 +6537,19 @@ static const struct hda_fixup alc269_fixups[] = {
                .chained = true,
                .chain_id = ALC293_FIXUP_DELL1_MIC_NO_PRESENCE
        },
-       [ALC292_FIXUP_DELL_E7X] = {
+       [ALC292_FIXUP_DELL_E7X_AAMIX] = {
                .type = HDA_FIXUP_FUNC,
                .v.func = alc_fixup_dell_xps13,
                .chained = true,
                .chain_id = ALC292_FIXUP_DISABLE_AAMIX
        },
+       [ALC292_FIXUP_DELL_E7X] = {
+               .type = HDA_FIXUP_FUNC,
+               .v.func = snd_hda_gen_fixup_micmute_led,
+               /* micmute fixup must be applied at last */
+               .chained_before = true,
+               .chain_id = ALC292_FIXUP_DELL_E7X_AAMIX,
+       },
        [ALC298_FIXUP_ALIENWARE_MIC_NO_PRESENCE] = {
                .type = HDA_FIXUP_PINS,
                .v.pins = (const struct hda_pintbl[]) {