Re: [PATCH] ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged

From: Takashi Iwai
Date: Fri Aug 07 2020 - 04:11:06 EST


On Fri, 07 Aug 2020 10:05:12 +0200,
Kai-Heng Feng wrote:
>
> The jack on Intel NUC 8 Rugged rear panel doesn't work.
>
> The spec [1] states that the jack supports both headphone and
> microphone, so override a Pin Complex which has both Amp-In and Amp-Out
> to make the jack work.
>
> Node 0x1b fits the requirement, and user confirmed the jack now works
> with new pin config.
>
> [1] https://www.intel.com/content/dam/support/us/en/documents/mini-pcs/NUC8CCH_TechProdSpec.pdf
> BugLink: https://bugs.launchpad.net/bugs/1875199
>
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>

OK, usually a codec quirk entry with 8086:* is doubtful, but in this
case, it's really the Intel (reference) hardware, hence it should be
so.

Applied now. Thanks.


Takashi

> ---
> sound/pci/hda/patch_realtek.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 2477f3ed7237..daedcc0adc21 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -6159,6 +6159,7 @@ enum {
> ALC269_FIXUP_CZC_L101,
> ALC269_FIXUP_LEMOTE_A1802,
> ALC269_FIXUP_LEMOTE_A190X,
> + ALC256_FIXUP_INTEL_NUC8_RUGGED,
> };
>
> static const struct hda_fixup alc269_fixups[] = {
> @@ -7480,6 +7481,15 @@ static const struct hda_fixup alc269_fixups[] = {
> },
> .chain_id = ALC269_FIXUP_DMIC,
> },
> + [ALC256_FIXUP_INTEL_NUC8_RUGGED] = {
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + { 0x1b, 0x01a1913c }, /* use as headset mic, without its own jack detect */
> + { }
> + },
> + .chained = true,
> + .chain_id = ALC269_FIXUP_HEADSET_MODE
> + },
> };
>
> static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> @@ -7777,6 +7787,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> SND_PCI_QUIRK(0x10ec, 0x118c, "Medion EE4254 MD62100", ALC256_FIXUP_MEDION_HEADSET_NO_PRESENCE),
> SND_PCI_QUIRK(0x1c06, 0x2013, "Lemote A1802", ALC269_FIXUP_LEMOTE_A1802),
> SND_PCI_QUIRK(0x1c06, 0x2015, "Lemote A190X", ALC269_FIXUP_LEMOTE_A190X),
> + SND_PCI_QUIRK(0x8086, 0x2080, "Intel NUC 8 Rugged", ALC256_FIXUP_INTEL_NUC8_RUGGED),
>
> #if 0
> /* Below is a quirk table taken from the old code.
> --
> 2.17.1
>