public inbox for linux-sound@vger.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Sean Rhodes <sean@starlabs.systems>
Cc: linux-kernel@vger.kernel.org, tiwai@suse.com,
	chris.chiu@canonical.com, edip@medip.dev, kailang@realtek.com,
	linux-sound@vger.kernel.org, perex@perex.cz,
	david.henningsson@canonical.com, sbinding@opensource.cirrus.com
Subject: Re: [PATCH] ALSA: hda/realtek: Fix speaker pop on Star Labs StarFighter
Date: Wed, 18 Feb 2026 08:28:55 +0100	[thread overview]
Message-ID: <87342ybjd4.wl-tiwai@suse.de> (raw)
In-Reply-To: <CABtds-0aHEfz3=i=q_4bNHwfEg1aCFD4=1Js6hZ=FWpB9c8onw@mail.gmail.com>

On Tue, 17 Feb 2026 23:14:24 +0100,
Sean Rhodes wrote:
> On Star Labs StarFighter (Realtek ALC233/235), the internal speakers can
> emit an audible pop when resuming from runtime suspend.
> 
> The speaker amplifier is controlled via EAPD. The generic Realtek shutup
> path can toggle EAPD/pin widget control while the amp is still unmuted,
> causing the pop.

Doesn't just turn off shutup (e.g. applying ALC269_FIXUP_NO_SHUTUP
quirk) work enough in your case?  Or just muting without touching
EAPD?

If only mute is needed, you can apply a simpler fix like below.


thanks,

Takashi

-- 8< --

--- a/sound/hda/codecs/realtek/alc269.c
+++ b/sound/hda/codecs/realtek/alc269.c
@@ -3609,6 +3609,22 @@ static void alc245_fixup_hp_zbook_firefly_g12a(struct hda_codec *codec,
 	alc285_fixup_hp_coef_micmute_led(codec, fix, action);
 }
 
+static void starlabs_starfighter_shutup(struct hda_codec *codec)
+{
+	if (snd_hda_gen_shutup_speakers(codec))
+		msleep(30);
+}
+
+static void alc233_fixup_starlabs_starfighter(struct hda_codec *codec,
+					      const struct hda_fixup *fix,
+					      int action)
+{
+	struct alc_spec *spec = codec->spec;
+
+	if (action == HDA_FIXUP_ACT_PRE_PROBE)
+		spec->shutup = starlabs_starfighter_shutup;
+}
+
 /*
  * ALC287 PCM hooks
  */
@@ -4056,6 +4072,7 @@ enum {
 	ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO,
 	ALC233_FIXUP_LENOVO_GPIO2_MIC_HOTKEY,
 	ALC245_FIXUP_BASS_HP_DAC,
+	ALC233_FIXUP_STARLABS_STARFIGHTER,
 };
 
 /* A special fixup for Lenovo C940 and Yoga Duet 7;
@@ -6576,6 +6593,10 @@ static const struct hda_fixup alc269_fixups[] = {
 		/* Borrow the DAC routing selected for those Thinkpads */
 		.v.func = alc285_fixup_thinkpad_x1_gen7,
 	},
+	[ALC233_FIXUP_STARLABS_STARFIGHTER] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc233_fixup_starlabs_starfighter,
+	},
 };
 
 static const struct hda_quirk alc269_fixup_tbl[] = {
@@ -7651,6 +7672,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x2782, 0x1705, "MEDION E15433", ALC269VC_FIXUP_INFINIX_Y4_MAX),
 	SND_PCI_QUIRK(0x2782, 0x1707, "Vaio VJFE-ADL", ALC298_FIXUP_SPK_VOLUME),
 	SND_PCI_QUIRK(0x2782, 0x4900, "MEDION E15443", ALC233_FIXUP_MEDION_MTL_SPK),
+	SND_PCI_QUIRK(0x7017, 0x2014, "Star Labs StarFighter", ALC233_FIXUP_STARLABS_STARFIGHTER),
 	SND_PCI_QUIRK(0x8086, 0x2074, "Intel NUC 8", ALC233_FIXUP_INTEL_NUC8_DMIC),
 	SND_PCI_QUIRK(0x8086, 0x2080, "Intel NUC 8 Rugged", ALC256_FIXUP_INTEL_NUC8_RUGGED),
 	SND_PCI_QUIRK(0x8086, 0x2081, "Intel NUC 10", ALC256_FIXUP_INTEL_NUC10),

      reply	other threads:[~2026-02-18  7:28 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-17 22:14 [PATCH] ALSA: hda/realtek: Fix speaker pop on Star Labs StarFighter Sean Rhodes
2026-02-18  7:28 ` Takashi Iwai [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=87342ybjd4.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=chris.chiu@canonical.com \
    --cc=david.henningsson@canonical.com \
    --cc=edip@medip.dev \
    --cc=kailang@realtek.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=sbinding@opensource.cirrus.com \
    --cc=sean@starlabs.systems \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox