ALSA: hda - remove no physical connection pins from pin_quirk table
authorHui Wang <hui.wang@canonical.com>
Mon, 3 Aug 2015 03:03:49 +0000 (11:03 +0800)
committerTakashi Iwai <tiwai@suse.de>
Mon, 3 Aug 2015 08:16:20 +0000 (10:16 +0200)
To cleanup the pin_quirk table:
 - rewrite the pin_config_match(), comparing all pins on the machine
   with the corresponding pins in the quirk table.
 - remove all 0x4xxxxxxx pin configurations from pin_quirk table
 - after removing the 0x4xxxxxxx pin configurations, some pin tables
   are exactly same, so removing the redudant pin tables.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_auto_parser.c
sound/pci/hda/patch_realtek.c

index 03b7399bb7f00a131fb677bcec2768e0aa09cb71..7f57a145a47e1fe8b5a949511fdfa99c9c55c221 100644 (file)
@@ -887,11 +887,32 @@ EXPORT_SYMBOL_GPL(snd_hda_apply_fixup);
 static bool pin_config_match(struct hda_codec *codec,
                             const struct hda_pintbl *pins)
 {
-       for (; pins->nid; pins++) {
-               u32 def_conf = snd_hda_codec_get_pincfg(codec, pins->nid);
-               if (pins->val != def_conf)
+       int i;
+
+       for (i = 0; i < codec->init_pins.used; i++) {
+               struct hda_pincfg *pin = snd_array_elem(&codec->init_pins, i);
+               hda_nid_t nid = pin->nid;
+               u32 cfg = pin->cfg;
+               const struct hda_pintbl *t_pins;
+               int found;
+
+               t_pins = pins;
+               found = 0;
+               for (; t_pins->nid; t_pins++) {
+                       if (t_pins->nid == nid) {
+                               found = 1;
+                               if (t_pins->val == cfg)
+                                       break;
+                               else if ((cfg & 0xf0000000) == 0x40000000 && (t_pins->val & 0xf0000000) == 0x40000000)
+                                       break;
+                               else
+                                       return false;
+                       }
+               }
+               if (!found && (cfg & 0xf0000000) != 0x40000000)
                        return false;
        }
+
        return true;
 }
 
index 4ae877c3b6a12bf04f4ddf628287019d983135c4..7ebacefc3d3e46d160664607d8befd31affe73dc 100644 (file)
@@ -5385,399 +5385,192 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
        {}
 };
 
-#define ALC255_STANDARD_PINS \
-       {0x18, 0x411111f0}, \
-       {0x19, 0x411111f0}, \
-       {0x1a, 0x411111f0}, \
-       {0x1b, 0x411111f0}, \
-       {0x1e, 0x411111f0}
-
 #define ALC256_STANDARD_PINS \
        {0x12, 0x90a60140}, \
        {0x14, 0x90170110}, \
-       {0x19, 0x411111f0}, \
-       {0x1a, 0x411111f0}, \
-       {0x1b, 0x411111f0}, \
        {0x21, 0x02211020}
 
 #define ALC282_STANDARD_PINS \
-       {0x14, 0x90170110}, \
-       {0x18, 0x411111f0}, \
-       {0x1a, 0x411111f0}, \
-       {0x1b, 0x411111f0}, \
-       {0x1e, 0x411111f0}
-
-#define ALC288_STANDARD_PINS \
-       {0x17, 0x411111f0}, \
-       {0x18, 0x411111f0}, \
-       {0x19, 0x411111f0}, \
-       {0x1a, 0x411111f0}, \
-       {0x1e, 0x411111f0}
+       {0x14, 0x90170110}
 
 #define ALC290_STANDARD_PINS \
-       {0x12, 0x99a30130}, \
-       {0x13, 0x40000000}, \
-       {0x16, 0x411111f0}, \
-       {0x17, 0x411111f0}, \
-       {0x19, 0x411111f0}, \
-       {0x1b, 0x411111f0}, \
-       {0x1e, 0x411111f0}
+       {0x12, 0x99a30130}
 
 #define ALC292_STANDARD_PINS \
        {0x14, 0x90170110}, \
-       {0x15, 0x0221401f}, \
-       {0x1a, 0x411111f0}, \
-       {0x1b, 0x411111f0}, \
-       {0x1d, 0x40700001}
-
-#define ALC298_STANDARD_PINS \
-       {0x18, 0x411111f0}, \
-       {0x19, 0x411111f0}, \
-       {0x1a, 0x411111f0}, \
-       {0x1e, 0x411111f0}, \
-       {0x1f, 0x411111f0}
+       {0x15, 0x0221401f}
 
 static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
-               {0x12, 0x40300000},
                {0x14, 0x90170110},
-               {0x17, 0x411111f0},
-               {0x1d, 0x40538029},
                {0x21, 0x02211020}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60140},
                {0x14, 0x90170110},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211020}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60160},
                {0x14, 0x90170120},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211030}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               {0x12, 0x40000000},
                {0x14, 0x90170130},
-               {0x17, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
                {0x1b, 0x01014020},
-               {0x1d, 0x4054c029},
-               {0x1e, 0x411111f0},
                {0x21, 0x0221103f}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               {0x12, 0x40000000},
                {0x14, 0x90170150},
-               {0x17, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
                {0x1b, 0x02011020},
-               {0x1d, 0x4054c029},
-               {0x1e, 0x411111f0},
                {0x21, 0x0221105f}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               {0x12, 0x40000000},
                {0x14, 0x90170110},
-               {0x17, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
                {0x1b, 0x01014020},
-               {0x1d, 0x4054c029},
-               {0x1e, 0x411111f0},
                {0x21, 0x0221101f}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
                {0x12, 0x90a60160},
                {0x14, 0x90170120},
                {0x17, 0x90170140},
-               {0x18, 0x40000000},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x41163b05},
-               {0x1e, 0x411111f0},
                {0x21, 0x0321102f}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60160},
                {0x14, 0x90170130},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211040}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60160},
                {0x14, 0x90170140},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211050}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60170},
                {0x14, 0x90170120},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211030}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60170},
                {0x14, 0x90170130},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211040}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60170},
                {0x14, 0x90170140},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211050}),
        SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell Inspiron 5548", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60180},
                {0x14, 0x90170130},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211040}),
        SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC255_STANDARD_PINS,
                {0x12, 0x90a60160},
                {0x14, 0x90170120},
-               {0x17, 0x40000000},
-               {0x1d, 0x40700001},
                {0x21, 0x02211030}),
        SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC256_STANDARD_PINS,
-               {0x13, 0x40000000},
-               {0x1d, 0x40700001},
-               {0x1e, 0x411111f0}),
-       SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC256_STANDARD_PINS,
-               {0x13, 0x411111f0},
-               {0x1d, 0x40700001},
-               {0x1e, 0x411111f0}),
-       SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC256_STANDARD_PINS,
-               {0x13, 0x411111f0},
-               {0x1d, 0x4077992d},
-               {0x1e, 0x411111ff}),
+               ALC256_STANDARD_PINS),
        SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4,
                {0x12, 0x90a60130},
-               {0x13, 0x40000000},
                {0x14, 0x90170110},
                {0x15, 0x0421101f},
-               {0x16, 0x411111f0},
-               {0x17, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x04a11020},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x40748605},
-               {0x1e, 0x411111f0}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC269_FIXUP_HP_GPIO_MIC1_LED,
                {0x12, 0x90a60140},
-               {0x13, 0x40000000},
                {0x14, 0x90170110},
                {0x15, 0x0421101f},
-               {0x16, 0x411111f0},
-               {0x17, 0x411111f0},
                {0x18, 0x02811030},
-               {0x19, 0x411111f0},
                {0x1a, 0x04a1103f},
-               {0x1b, 0x02011020},
-               {0x1d, 0x40700001},
-               {0x1e, 0x411111f0}),
+               {0x1b, 0x02011020}),
        SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP 15 Touchsmart", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC282_STANDARD_PINS,
                {0x12, 0x99a30130},
-               {0x17, 0x40000000},
                {0x19, 0x03a11020},
-               {0x1d, 0x40f41905},
                {0x21, 0x0321101f}),
        SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC282_STANDARD_PINS,
                {0x12, 0x99a30130},
-               {0x17, 0x40020008},
                {0x19, 0x03a11020},
-               {0x1d, 0x40e00001},
                {0x21, 0x03211040}),
        SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC282_STANDARD_PINS,
                {0x12, 0x99a30130},
-               {0x17, 0x40000000},
                {0x19, 0x03a11030},
-               {0x1d, 0x40e00001},
                {0x21, 0x03211020}),
        SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC282_STANDARD_PINS,
                {0x12, 0x99a30130},
-               {0x17, 0x40000000},
-               {0x19, 0x03a11030},
-               {0x1d, 0x40f00001},
-               {0x21, 0x03211020}),
-       SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
-               ALC282_STANDARD_PINS,
-               {0x12, 0x99a30130},
-               {0x17, 0x40000000},
                {0x19, 0x04a11020},
-               {0x1d, 0x40f00001},
                {0x21, 0x0421101f}),
-       SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
-               ALC282_STANDARD_PINS,
-               {0x12, 0x99a30130},
-               {0x17, 0x40000000},
-               {0x19, 0x03a11030},
-               {0x1d, 0x40f00001},
-               {0x21, 0x04211020}),
        SND_HDA_PIN_QUIRK(0x10ec0282, 0x103c, "HP", ALC269_FIXUP_HP_LINE1_MIC1_LED,
                ALC282_STANDARD_PINS,
                {0x12, 0x90a60140},
-               {0x17, 0x40000000},
                {0x19, 0x04a11030},
-               {0x1d, 0x40f00001},
                {0x21, 0x04211020}),
        SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
                ALC282_STANDARD_PINS,
                {0x12, 0x90a60130},
-               {0x17, 0x40020008},
-               {0x19, 0x411111f0},
-               {0x1d, 0x40e00001},
                {0x21, 0x0321101f}),
        SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
                {0x12, 0x90a60160},
                {0x14, 0x90170120},
-               {0x17, 0x40000000},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x40700001},
-               {0x1e, 0x411111f0},
                {0x21, 0x02211030}),
        SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
                ALC282_STANDARD_PINS,
                {0x12, 0x90a60130},
-               {0x17, 0x40020008},
                {0x19, 0x03a11020},
-               {0x1d, 0x40e00001},
                {0x21, 0x0321101f}),
        SND_HDA_PIN_QUIRK(0x10ec0288, 0x1028, "Dell", ALC288_FIXUP_DELL_XPS_13_GPIO6,
-               ALC288_STANDARD_PINS,
                {0x12, 0x90a60120},
-               {0x13, 0x40000000},
                {0x14, 0x90170110},
-               {0x1d, 0x4076832d},
                {0x21, 0x0321101f}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
-               {0x14, 0x411111f0},
                {0x15, 0x04211040},
                {0x18, 0x90170112},
-               {0x1a, 0x04a11020},
-               {0x1d, 0x4075812d}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
-               {0x14, 0x411111f0},
                {0x15, 0x04211040},
                {0x18, 0x90170110},
-               {0x1a, 0x04a11020},
-               {0x1d, 0x4075812d}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
-               {0x14, 0x411111f0},
                {0x15, 0x0421101f},
-               {0x18, 0x411111f0},
-               {0x1a, 0x04a11020},
-               {0x1d, 0x4075812d}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
-               {0x14, 0x411111f0},
                {0x15, 0x04211020},
-               {0x18, 0x411111f0},
-               {0x1a, 0x04a11040},
-               {0x1d, 0x4076a12d}),
+               {0x1a, 0x04a11040}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
                {0x14, 0x90170110},
                {0x15, 0x04211020},
-               {0x18, 0x411111f0},
-               {0x1a, 0x04a11040},
-               {0x1d, 0x4076a12d}),
+               {0x1a, 0x04a11040}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
                {0x14, 0x90170110},
                {0x15, 0x04211020},
-               {0x18, 0x411111f0},
-               {0x1a, 0x04a11020},
-               {0x1d, 0x4076a12d}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0290, 0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC1,
                ALC290_STANDARD_PINS,
                {0x14, 0x90170110},
                {0x15, 0x0421101f},
-               {0x18, 0x411111f0},
-               {0x1a, 0x04a11020},
-               {0x1d, 0x4075812d}),
+               {0x1a, 0x04a11020}),
        SND_HDA_PIN_QUIRK(0x10ec0292, 0x1028, "Dell", ALC269_FIXUP_DELL2_MIC_NO_PRESENCE,
                ALC292_STANDARD_PINS,
                {0x12, 0x90a60140},
-               {0x13, 0x411111f0},
                {0x16, 0x01014020},
-               {0x18, 0x411111f0},
-               {0x19, 0x01a19030},
-               {0x1e, 0x411111f0}),
+               {0x19, 0x01a19030}),
        SND_HDA_PIN_QUIRK(0x10ec0292, 0x1028, "Dell", ALC269_FIXUP_DELL2_MIC_NO_PRESENCE,
                ALC292_STANDARD_PINS,
                {0x12, 0x90a60140},
-               {0x13, 0x411111f0},
                {0x16, 0x01014020},
                {0x18, 0x02a19031},
-               {0x19, 0x01a1903e},
-               {0x1e, 0x411111f0}),
+               {0x19, 0x01a1903e}),
        SND_HDA_PIN_QUIRK(0x10ec0292, 0x1028, "Dell", ALC269_FIXUP_DELL3_MIC_NO_PRESENCE,
                ALC292_STANDARD_PINS,
-               {0x12, 0x90a60140},
-               {0x13, 0x411111f0},
-               {0x16, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1e, 0x411111f0}),
+               {0x12, 0x90a60140}),
        SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
                ALC292_STANDARD_PINS,
-               {0x12, 0x40000000},
                {0x13, 0x90a60140},
                {0x16, 0x21014020},
-               {0x18, 0x411111f0},
-               {0x19, 0x21a19030},
-               {0x1e, 0x411111f0}),
+               {0x19, 0x21a19030}),
        SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
                ALC292_STANDARD_PINS,
-               {0x12, 0x40000000},
-               {0x13, 0x90a60140},
-               {0x16, 0x411111f0},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1e, 0x411111f0}),
-       SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC292_STANDARD_PINS,
-               {0x12, 0x40000000},
-               {0x13, 0x90a60140},
-               {0x16, 0x21014020},
-               {0x18, 0x411111f0},
-               {0x19, 0x21a19030},
-               {0x1e, 0x411111ff}),
+               {0x13, 0x90a60140}),
        SND_HDA_PIN_QUIRK(0x10ec0298, 0x1028, "Dell", ALC298_FIXUP_DELL1_MIC_NO_PRESENCE,
-               ALC298_STANDARD_PINS,
                {0x12, 0x90a60130},
-               {0x13, 0x40000000},
-               {0x14, 0x411111f0},
                {0x17, 0x90170140},
-               {0x1d, 0x4068a36d},
                {0x21, 0x03211020}),
        {}
 };
@@ -6671,77 +6464,33 @@ static const struct hda_model_fixup alc662_fixup_models[] = {
 
 static const struct snd_hda_pin_quirk alc662_pin_fixup_tbl[] = {
        SND_HDA_PIN_QUIRK(0x10ec0662, 0x1028, "Dell", ALC662_FIXUP_DELL_MIC_NO_PRESENCE,
-               {0x12, 0x4004c000},
                {0x14, 0x01014010},
-               {0x15, 0x411111f0},
-               {0x16, 0x411111f0},
                {0x18, 0x01a19020},
-               {0x19, 0x411111f0},
                {0x1a, 0x0181302f},
-               {0x1b, 0x0221401f},
-               {0x1c, 0x411111f0},
-               {0x1d, 0x4054c601},
-               {0x1e, 0x411111f0}),
+               {0x1b, 0x0221401f}),
        SND_HDA_PIN_QUIRK(0x10ec0668, 0x1028, "Dell", ALC668_FIXUP_AUTO_MUTE,
                {0x12, 0x99a30130},
                {0x14, 0x90170110},
                {0x15, 0x0321101f},
-               {0x16, 0x03011020},
-               {0x18, 0x40000008},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x41000001},
-               {0x1e, 0x411111f0},
-               {0x1f, 0x411111f0}),
+               {0x16, 0x03011020}),
        SND_HDA_PIN_QUIRK(0x10ec0668, 0x1028, "Dell", ALC668_FIXUP_AUTO_MUTE,
                {0x12, 0x99a30140},
                {0x14, 0x90170110},
                {0x15, 0x0321101f},
-               {0x16, 0x03011020},
-               {0x18, 0x40000008},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x41000001},
-               {0x1e, 0x411111f0},
-               {0x1f, 0x411111f0}),
+               {0x16, 0x03011020}),
        SND_HDA_PIN_QUIRK(0x10ec0668, 0x1028, "Dell", ALC668_FIXUP_AUTO_MUTE,
                {0x12, 0x99a30150},
                {0x14, 0x90170110},
                {0x15, 0x0321101f},
-               {0x16, 0x03011020},
-               {0x18, 0x40000008},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x41000001},
-               {0x1e, 0x411111f0},
-               {0x1f, 0x411111f0}),
+               {0x16, 0x03011020}),
        SND_HDA_PIN_QUIRK(0x10ec0668, 0x1028, "Dell", ALC668_FIXUP_AUTO_MUTE,
-               {0x12, 0x411111f0},
                {0x14, 0x90170110},
                {0x15, 0x0321101f},
-               {0x16, 0x03011020},
-               {0x18, 0x40000008},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x41000001},
-               {0x1e, 0x411111f0},
-               {0x1f, 0x411111f0}),
+               {0x16, 0x03011020}),
        SND_HDA_PIN_QUIRK(0x10ec0668, 0x1028, "Dell XPS 15", ALC668_FIXUP_AUTO_MUTE,
                {0x12, 0x90a60130},
                {0x14, 0x90170110},
-               {0x15, 0x0321101f},
-               {0x16, 0x40000000},
-               {0x18, 0x411111f0},
-               {0x19, 0x411111f0},
-               {0x1a, 0x411111f0},
-               {0x1b, 0x411111f0},
-               {0x1d, 0x40d6832d},
-               {0x1e, 0x411111f0},
-               {0x1f, 0x411111f0}),
+               {0x15, 0x0321101f}),
        {}
 };