All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Sungwoo Kim" <iam@sung-woo.kim>
Cc: linux-sound@vger.kernel.org
Subject: Re: [RFC PATCH] ALSA: hda/realtek: fix missing chained flag in fixup
Date: Sun, 15 Nov 2026 13:32:06 +0000	[thread overview]
Message-ID: <sashiko-outbox-215527@kernel.org> (raw)
In-Reply-To: <20261115132215.4084031-2-iam@sung-woo.kim>

Thank you for your contribution! Sashiko AI review found 1 potential
issue to consider:
- [High] ALSA: hda/realtek: chaining ALC269_FIXUP_DMIC clobbers board
  pin configs
--

commit c0d3245c2b82a623907d3583db3347a65c5b33dc
Author: Sungwoo Kim <iam@sung-woo.kim>

ALSA: hda/realtek: fix missing chained flag in fixup

This commit sets .chained = true on five Loongson-3 pin fixup entries in
alc269_fixups[] that specify .chain_id = ALC269_FIXUP_DMIC.

> diff --git a/sound/hda/codecs/realtek/alc269.c b/sound/hda/codecs/realtek/alc269.c
> index 96fa8c2782bb4..1be2e609c28d0 100644
> --- a/sound/hda/codecs/realtek/alc269.c
> +++ b/sound/hda/codecs/realtek/alc269.c
> @@ -6431,6 +6431,7 @@ static const struct hda_fixup alc269_fixups[] = {
>  			{ 0x1e, 0x411111f0 },
>  			{ }
>  		},
> +		.chained = true,
>  		.chain_id = ALC269_FIXUP_DMIC,
>  	},
>  	[ALC269_FIXUP_CZC_TMI] = {
> @@ -6449,6 +6450,7 @@ static const struct hda_fixup alc269_fixups[] = {
>  			{ 0x20, 0x8000ffff },
>  			{ }
>  		},
> +		.chained = true,
>  		.chain_id = ALC269_FIXUP_DMIC,
>  	},
>  	[ALC269_FIXUP_CZC_L101] = {
> @@ -6467,6 +6469,7 @@ static const struct hda_fixup alc269_fixups[] = {
>  			{ 0x1e, 0x411111f0 },
>  			{ }
>  		},
> +		.chained = true,
>  		.chain_id = ALC269_FIXUP_DMIC,
>  	},
>  	[ALC269_FIXUP_LEMOTE_A1802] = {
> @@ -6485,6 +6488,7 @@ static const struct hda_fixup alc269_fixups[] = {
>  			{ 0x21, 0x03214020 },
>  			{ }
>  		},
> +		.chained = true,
>  		.chain_id = ALC269_FIXUP_DMIC,
>  	},
>  	[ALC269_FIXUP_LEMOTE_A190X] = {
> @@ -6497,6 +6501,7 @@ static const struct hda_fixup alc269_fixups[] = {
>  			{ 0x1b, 0x0201401f }, /* front lineout */
>  			{ }
>  		},
> +		.chained = true,
>  		.chain_id = ALC269_FIXUP_DMIC,
>  	},
>  	[ALC256_FIXUP_INTEL_NUC8_RUGGED] = {

[Severity: High]
Does chaining ALC269_FIXUP_DMIC here overwrite the board-specific pin
configurations on all five machines?

sound/hda/codecs/realtek/alc269.c:alc269_fixups[] {
	[ALC269_FIXUP_DMIC] = {
		.type = HDA_FIXUP_PINS,
		.v.pins = (const struct hda_pintbl[]) {
			{ 0x12, 0x99a3092f }, /* int-mic */
			{ 0x14, 0x99130110 }, /* speaker */
			{ 0x15, 0x0121401f }, /* HP out */
			{ 0x18, 0x01a19c20 }, /* mic */
			{ }
		},
	},
}

When __snd_hda_apply_fixup() applies ALC269_FIXUP_DMIC after the primary
fixup, snd_hda_add_pincfg() replaces any existing pin config for the same
NID in codec->driver_pins.  For example, in ALC269_FIXUP_CZC_L101, pins
0x12 and 0x15 are disabled because headphone out is on 0x1b and 0x14 is
an external line-out jack, so running ALC269_FIXUP_DMIC re-enables 0x12
and 0x15 and turns 0x14 into an internal speaker.

The unused .chain_id = ALC269_FIXUP_DMIC initializers appear to be
copy-paste remnants from commit f1ec5be17b9a ("ALSA: hda/realtek: Add
alc269/alc662 pin-tables for Loongson-3 laptops") and should be removed
instead of enabled.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261115132215.4084031-2-iam@sung-woo.kim?part=1

      parent reply	other threads:[~2026-11-15 13:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-15 13:22 [RFC PATCH] ALSA: hda/realtek: fix missing chained flag in fixup Sungwoo Kim
2026-11-15 13:26 ` Sungwoo Kim
2026-11-15 13:35   ` Sungwoo Kim
2026-11-15 13:32 ` sashiko-bot [this message]

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=sashiko-outbox-215527@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=iam@sung-woo.kim \
    --cc=linux-sound@vger.kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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.