ALSA: hda - fix a problem for lineout on a Dell AIO machine

On this Dell AIO machine, the lineout jack does not work.

We found the pin 0x1a is assigned to lineout on this machine, and in
the past, we applied ALC298_FIXUP_DELL1_MIC_NO_PRESENCE to fix the
heaset-set mic problem for this machine, this fixup will redefine
the pin 0x1a to headphone-mic, as a result the lineout doesn't
work anymore.

After consulting with Dell, they told us this machine doesn't support
microphone via headset jack, so we add a new fixup which only defines
the pin 0x18 as the headset-mic.

[rearranged the fixup insertion position by tiwai in order to make the
merge with other branches easier -- tiwai]

Fixes: 59ec4b57bcae ("ALSA: hda - Fix headset mic detection problem for two dell machines")
Cc: <stable@vger.kernel.org>
Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

authored by Hui Wang and committed by Takashi Iwai 2f726aec 9dfcce42

+11 -1
+11 -1
sound/pci/hda/patch_realtek.c
··· 4858 ALC292_FIXUP_DISABLE_AAMIX, 4859 ALC293_FIXUP_DISABLE_AAMIX_MULTIJACK, 4860 ALC298_FIXUP_DELL1_MIC_NO_PRESENCE, 4861 ALC275_FIXUP_DELL_XPS, 4862 ALC256_FIXUP_DELL_XPS_13_HEADPHONE_NOISE, 4863 ALC293_FIXUP_LENOVO_SPK_NOISE, ··· 5471 .chained = true, 5472 .chain_id = ALC269_FIXUP_HEADSET_MODE 5473 }, 5474 [ALC275_FIXUP_DELL_XPS] = { 5475 .type = HDA_FIXUP_VERBS, 5476 .v.verbs = (const struct hda_verb[]) { ··· 5552 .type = HDA_FIXUP_FUNC, 5553 .v.func = alc298_fixup_speaker_volume, 5554 .chained = true, 5555 - .chain_id = ALC298_FIXUP_DELL1_MIC_NO_PRESENCE, 5556 }, 5557 [ALC256_FIXUP_DELL_INSPIRON_7559_SUBWOOFER] = { 5558 .type = HDA_FIXUP_PINS,
··· 4858 ALC292_FIXUP_DISABLE_AAMIX, 4859 ALC293_FIXUP_DISABLE_AAMIX_MULTIJACK, 4860 ALC298_FIXUP_DELL1_MIC_NO_PRESENCE, 4861 + ALC298_FIXUP_DELL_AIO_MIC_NO_PRESENCE, 4862 ALC275_FIXUP_DELL_XPS, 4863 ALC256_FIXUP_DELL_XPS_13_HEADPHONE_NOISE, 4864 ALC293_FIXUP_LENOVO_SPK_NOISE, ··· 5470 .chained = true, 5471 .chain_id = ALC269_FIXUP_HEADSET_MODE 5472 }, 5473 + [ALC298_FIXUP_DELL_AIO_MIC_NO_PRESENCE] = { 5474 + .type = HDA_FIXUP_PINS, 5475 + .v.pins = (const struct hda_pintbl[]) { 5476 + { 0x18, 0x01a1913c }, /* use as headset mic, without its own jack detect */ 5477 + { } 5478 + }, 5479 + .chained = true, 5480 + .chain_id = ALC269_FIXUP_HEADSET_MODE 5481 + }, 5482 [ALC275_FIXUP_DELL_XPS] = { 5483 .type = HDA_FIXUP_VERBS, 5484 .v.verbs = (const struct hda_verb[]) { ··· 5542 .type = HDA_FIXUP_FUNC, 5543 .v.func = alc298_fixup_speaker_volume, 5544 .chained = true, 5545 + .chain_id = ALC298_FIXUP_DELL_AIO_MIC_NO_PRESENCE, 5546 }, 5547 [ALC256_FIXUP_DELL_INSPIRON_7559_SUBWOOFER] = { 5548 .type = HDA_FIXUP_PINS,