]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ALSA: hda/sigmatel - Disable automute for Elo VuPoint
authorMichael Pobega <mpobega@neverware.com>
Thu, 4 Oct 2018 18:58:21 +0000 (14:58 -0400)
committerTakashi Iwai <tiwai@suse.de>
Thu, 4 Oct 2018 19:22:47 +0000 (21:22 +0200)
The Elo VuPoint 15MX has two headphone jacks of which neither work by
default. Disabling automute allows ALSA to work normally with the
speakers & left headphone jack.

Future pin configuration changes may be required in the future to get
the right headphone jack working in tandem.

Signed-off-by: Michael Pobega <mpobega@neverware.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_sigmatel.c

index d16a25a395c95c501f0707032678c5038a3ee5e5..1b6ecfb01759a8b398d3a5a7676e3707b9316927 100644 (file)
@@ -77,6 +77,7 @@ enum {
        STAC_DELL_M6_BOTH,
        STAC_DELL_EQ,
        STAC_ALIENWARE_M17X,
+       STAC_ELO_VUPOINT_15MX,
        STAC_92HD89XX_HP_FRONT_JACK,
        STAC_92HD89XX_HP_Z1_G2_RIGHT_MIC_JACK,
        STAC_92HD73XX_ASUS_MOBO,
@@ -1879,6 +1880,18 @@ static void stac92hd73xx_fixup_no_jd(struct hda_codec *codec,
                codec->no_jack_detect = 1;
 }
 
+
+static void stac92hd73xx_disable_automute(struct hda_codec *codec,
+                                    const struct hda_fixup *fix, int action)
+{
+       struct sigmatel_spec *spec = codec->spec;
+
+       if (action != HDA_FIXUP_ACT_PRE_PROBE)
+               return;
+
+       spec->gen.suppress_auto_mute = 1;
+}
+
 static const struct hda_fixup stac92hd73xx_fixups[] = {
        [STAC_92HD73XX_REF] = {
                .type = HDA_FIXUP_FUNC,
@@ -1904,6 +1917,10 @@ static const struct hda_fixup stac92hd73xx_fixups[] = {
                .type = HDA_FIXUP_FUNC,
                .v.func = stac92hd73xx_fixup_alienware_m17x,
        },
+       [STAC_ELO_VUPOINT_15MX] = {
+               .type = HDA_FIXUP_FUNC,
+               .v.func = stac92hd73xx_disable_automute,
+       },
        [STAC_92HD73XX_INTEL] = {
                .type = HDA_FIXUP_PINS,
                .v.pins = intel_dg45id_pin_configs,
@@ -1942,6 +1959,7 @@ static const struct hda_model_fixup stac92hd73xx_models[] = {
        { .id = STAC_DELL_M6_BOTH, .name = "dell-m6" },
        { .id = STAC_DELL_EQ, .name = "dell-eq" },
        { .id = STAC_ALIENWARE_M17X, .name = "alienware" },
+       { .id = STAC_ELO_VUPOINT_15MX, .name = "elo-vupoint-15mx" },
        { .id = STAC_92HD73XX_ASUS_MOBO, .name = "asus-mobo" },
        {}
 };
@@ -1991,6 +2009,8 @@ static const struct snd_pci_quirk stac92hd73xx_fixup_tbl[] = {
                      "Alienware M17x", STAC_ALIENWARE_M17X),
        SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x0490,
                      "Alienware M17x R3", STAC_DELL_EQ),
+       SND_PCI_QUIRK(0x1059, 0x1011,
+                     "ELO VuPoint 15MX", STAC_ELO_VUPOINT_15MX),
        SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x1927,
                                "HP Z1 G2", STAC_92HD89XX_HP_Z1_G2_RIGHT_MIC_JACK),
        SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x2b17,