All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Galen <rwekyes@gmail.com>
Cc: tiwai@suse.com, alsa-devel@alsa-project.org, linux-sound@vger.kernel.org
Subject: Re: [PATCH] ALSA: hda/conexant: Add pin config quirk for Lenovo IdeaPad Slim 5 16AKP10
Date: Tue, 16 Jun 2026 13:27:51 +0200	[thread overview]
Message-ID: <87se6mrah4.wl-tiwai@suse.de> (raw)
In-Reply-To: <20260615233353.19913-1-rwekyes@gmail.com>

On Tue, 16 Jun 2026 01:33:53 +0200,
Galen wrote:
> 
> The Lenovo IdeaPad Slim 5 16AKP10 (PCI SSID 17aa:38b6) uses the
> Conexant SN6140 codec. The internal microphone is on pin 0x1a but
> the BIOS configures it with pin default 0x95a60120, which includes
> a jack detection bit that causes the kernel to treat it as an
> unplugged external mic rather than a fixed internal mic.
> 
> Add a pin config quirk that overrides pin 0x1a to 0x95a60130,
> setting the connectivity bits to indicate a fixed/always-connected
> device. This allows the internal microphone to be correctly
> identified and used.
> 
> Signed-off-by: Galen Hassen <rwekyes@gmail.com>
> ---
>  sound/hda/codecs/conexant.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/sound/hda/codecs/conexant.c b/sound/hda/codecs/conexant.c
> index e3b6aaabe..40d4591f9 100644
> --- a/sound/hda/codecs/conexant.c
> +++ b/sound/hda/codecs/conexant.c
> @@ -291,6 +291,7 @@ enum {
>  	CXT_FIXUP_HEADSET_MIC,
>  	CXT_FIXUP_HP_MIC_NO_PRESENCE,
>  	CXT_PINCFG_SWS_JS201D,
> +	CXT_PINCFG_LENOVO_IDEAPAD_SLIM5_16AKP10,
>  	CXT_PINCFG_TOP_SPEAKER,
>  	CXT_FIXUP_HP_A_U,
>  	CXT_FIXUP_ACER_SWIFT_HP,
> @@ -826,6 +827,12 @@ static const struct hda_pintbl cxt_pincfg_lemote[] = {
>  	{}
>  };
>  
> +/* Lenovo IdeaPad Slim 5 16AKP10 with SN6140 */
> +static const struct hda_pintbl cxt_pincfg_lenovo_ideapad_slim5_16akp10[] = {
> +	{ 0x1a, 0x95a60130 }, /* Internal mic, fixed/always-connected */
> +	{}
> +};
> +
>  /* SuoWoSi/South-holding JS201D with sn6140 */
>  static const struct hda_pintbl cxt_pincfg_sws_js201d[] = {
>  	{ 0x16, 0x03211040 }, /* hp out */
> @@ -1006,6 +1013,10 @@ static const struct hda_fixup cxt_fixups[] = {
>  		.type = HDA_FIXUP_PINS,
>  		.v.pins = cxt_pincfg_sws_js201d,
>  	},
> +	[CXT_PINCFG_LENOVO_IDEAPAD_SLIM5_16AKP10] = {
> +		.type = HDA_FIXUP_PINS,
> +		.v.pins = cxt_pincfg_lenovo_ideapad_slim5_16akp10,
> +	},
>  	[CXT_PINCFG_TOP_SPEAKER] = {
>  		.type = HDA_FIXUP_PINS,
>  		.v.pins = (const struct hda_pintbl[]) {
> @@ -1116,6 +1127,7 @@ static const struct hda_quirk cxt5066_fixups[] = {
>  	SND_PCI_QUIRK(0x17aa, 0x38af, "Lenovo IdeaPad Z560", CXT_FIXUP_MUTE_LED_EAPD),
>  	SND_PCI_QUIRK(0x17aa, 0x3905, "Lenovo G50-30", CXT_FIXUP_STEREO_DMIC),
>  	SND_PCI_QUIRK(0x17aa, 0x390b, "Lenovo G50-80", CXT_FIXUP_STEREO_DMIC),
> +	SND_PCI_QUIRK(0x17aa, 0x38b6, "Lenovo IdeaPad Slim 5 16AKP10", CXT_PINCFG_LENOVO_IDEAPAD_SLIM5_16AKP10),
>  	SND_PCI_QUIRK(0x17aa, 0x3975, "Lenovo U300s", CXT_FIXUP_STEREO_DMIC),
>  	/* NOTE: we'd need to extend the quirk for 17aa:3977 as the same
>  	 * PCI SSID is used on multiple Lenovo models

The table is sorted in PCI SSID order.  Please try to put the entry at
the right position.


thanks,

Takashi

  reply	other threads:[~2026-06-16 11:27 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-15 23:33 [PATCH] ALSA: hda/conexant: Add pin config quirk for Lenovo IdeaPad Slim 5 16AKP10 Galen
2026-06-16 11:27 ` Takashi Iwai [this message]
2026-06-16 17:32   ` [PATCH v2] " Galen Hassen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87se6mrah4.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=rwekyes@gmail.com \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.