All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Chris Chiu <chris.chiu@canonical.com>
Cc: tiwai@suse.com, kailang@realtek.com, linux-sound@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] ALSA: hda/realtek: Add inverted LED quirk for HP ZBook 8 G2a
Date: Mon, 13 Jul 2026 12:09:54 +0200	[thread overview]
Message-ID: <87qzl7yzd9.wl-tiwai@suse.de> (raw)
In-Reply-To: <20260713020839.3822602-1-chris.chiu@canonical.com>

On Mon, 13 Jul 2026 04:08:39 +0200,
Chris Chiu wrote:
> 
> HP ZBook 8 G2a 14 and 16 (SSIDs 0x103c:0x8f94, 0x103c:0x8f95) use
> Realtek ALC245 codec with TAS2781 amplifier via I2C. These models
> require inverted speaker mute LED handling compared to the existing
> ALC245_FIXUP_HP_TAS2781_I2C_MUTE_LED quirk.
> 
> The existing quirk produces opposite LED behavior: when speaker is
> muted, the LED turns off (should be on), and when unmuted, the LED
> turns on (should be off). This patch adds a dedicated quirk that
> properly handles the inverted LED polarity.
> 
> Code flow explanation:
> - With HP pin (hp_pin != 0): Uses standard HDA LED framework via
>   alc245_fixup_hp_mute_led_coefbit() for full control interface
>   support, enabling both manual control and direct hardware updates.
>   
> - Without HP pin (hp_pin == 0, speaker-only laptops): Registers
>   direct vmaster_mute hook (alc245_hp_spk_mute_led_update_inverted)
>   to control LED during mute operations, ensuring LED feedback
>   without headphone jack detection capability.
> 
> Both paths use inverted LED update logic to correct polarity and
> maintain backward compatibility with existing systems.

So there can be multiple models with the same SSID and they have
different hardware configurations?

> Signed-off-by: Chris Chiu <chris.chiu@canonical.com>
> ---
>  sound/hda/codecs/realtek/alc269.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 56 insertions(+)
> 
> diff --git a/sound/hda/codecs/realtek/alc269.c b/sound/hda/codecs/realtek/alc269.c
> index b26ed9c1f09f..e04b5adce075a 100644
> --- a/sound/hda/codecs/realtek/alc269.c
> +++ b/sound/hda/codecs/realtek/alc269.c
> @@ -3776,6 +3776,15 @@ static void alc245_hp_spk_mute_led_update(void *private_data, int enabled)
>  	alc_update_coef_idx(codec, 0x0b, 0x0c, val);
>  }
>  
> +static void alc245_hp_spk_mute_led_update_inverted(void *private_data, int enabled)
> +{
> +	struct hda_codec *codec = private_data;
> +	unsigned int val;
> +
> +	val = enabled ? 0x04 : 0x08;	/* inverted: 0x04 off, 0x08 on */
> +	alc_update_coef_idx(codec, 0x0b, 0x0c, val);
> +}
> +
>  /* JD2: mute led GPIO3: micmute led */
>  static void alc245_tas2781_i2c_hp_fixup_muteled(struct hda_codec *codec,
>  					 const struct hda_fixup *fix, int action)
> @@ -3804,6 +3813,42 @@ static void alc245_tas2781_i2c_hp_fixup_muteled(struct hda_codec *codec,
>  		alc245_fixup_hp_mute_led_coefbit(codec, fix, action);
>  	alc285_fixup_hp_coef_micmute_led(codec, fix, action);
>  }
> +
> +/* Inverted LED version for HP ZBook 8 G2a models (SSIDs 0x8f94, 0x8f95)
> + * This fixup handles systems where the speaker mute LED polarity is reversed
> +/* Inverted LED quirk for HP ZBook 8 G2a (SSIDs 0x8f94, 0x8f95)

The comment block unbalance, you forgot to close the previous comment
line, or starting a new comment line mistakenly?


thanks,

Takashi

  reply	other threads:[~2026-07-13 10:09 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-13  2:08 [PATCH v2] ALSA: hda/realtek: Add inverted LED quirk for HP ZBook 8 G2a Chris Chiu
2026-07-13 10:09 ` Takashi Iwai [this message]
2026-07-14  1:55   ` Chris Chiu
2026-07-14  5:33     ` Takashi Iwai

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=87qzl7yzd9.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=chris.chiu@canonical.com \
    --cc=kailang@realtek.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --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.