Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Dutch Ingraham <stoa@gmx.us>
Cc: Matt DeVillier <matt.devillier@gmail.com>,
	Takashi Iwai <tiwai@suse.de>, Harin Lee <me@harin.net>,
	Thorsten Leemhuis <regressions@leemhuis.info>,
	Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
	Linux kernel regressions list <regressions@lists.linux.dev>,
	Linux Sound System <linux-sound@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [regression] ctxfi: no speaker output when headphones connected on >=7.0.x
Date: Fri, 15 May 2026 11:20:45 +0200	[thread overview]
Message-ID: <87ik8pt4eq.wl-tiwai@suse.de> (raw)
In-Reply-To: <trinity-2f1dd3ff-4c75-4085-86ae-cca1d09aa83f-1778178205524@3c-app-mailcom-bs11>

On Thu, 07 May 2026 20:23:25 +0200,
Dutch Ingraham wrote:
> 
> 
> 
> > Sent: Thursday, May 07, 2026 at 10:12 AM
> > From: "Matt DeVillier" <matt.devillier@gmail.com>
> > To: "Takashi Iwai" <tiwai@suse.de>
> > Cc: "Dutch Ingraham" <stoa@gmx.us>, "Harin Lee" <me@harin.net>, "Thorsten Leemhuis" <regressions@leemhuis.info>, "Jaroslav Kysela" <perex@perex.cz>, "Takashi Iwai" <tiwai@suse.com>, "Linux kernel regressions list" <regressions@lists.linux.dev>, "Linux Sound System" <linux-sound@vger.kernel.org>, "LKML" <linux-kernel@vger.kernel.org>
> > Subject: Re: [regression] ctxfi: no speaker output when headphones connected on >=7.0.x
> >
> > On Thu, May 7, 2026 at 10:07 AM Takashi Iwai <tiwai@suse.de> wrote:
> > >
> > > On Thu, 07 May 2026 17:02:14 +0200,
> > > Matt DeVillier wrote:
> > > >
> > > >
> > > > On Thu, May 7, 2026 at 8:24 AM Takashi Iwai <tiwai@suse.de> wrote:
> > > >
> > > >     On Thu, 07 May 2026 14:47:03 +0200,
> > > >     Dutch Ingraham wrote:
> > > >     >
> > > >     > > Sent: Thursday, May 07, 2026 at 1:30 AM
> > > >     > > From: "Takashi Iwai" <tiwai@suse.de>
> > > >     > > To: "Harin Lee" <me@harin.net>
> > > >     > > Cc: "Takashi Iwai" <tiwai@suse.de>, "Thorsten Leemhuis" <
> > > >     regressions@leemhuis.info>, "Jaroslav Kysela" <perex@perex.cz>, "Takashi
> > > >     Iwai" <tiwai@suse.com>, "Linux kernel regressions list" <
> > > >     regressions@lists.linux.dev>, "Linux Sound System" <
> > > >     linux-sound@vger.kernel.org>, "LKML" <linux-kernel@vger.kernel.org>,
> > > >     stoa@gmx.us
> > > >     > > Subject: Re: [regression] ctxfi: no speaker output when headphones
> > > >     connected on >=7.0.x
> > > >     > >
> > > >     > > On Thu, 07 May 2026 00:06:11 +0200,
> > > >     > > Harin Lee wrote:
> > > >     > > >
> > > >     > > > On 5/6/26 4:05 PM, Takashi Iwai wrote:
> > > >     > > > > On Wed, 06 May 2026 08:24:36 +0200,
> > > >     > > > > Thorsten Leemhuis wrote:
> > > >     > > > >>
> > > >     > > > >> Hi! Just FYI, I noticed a regression report in bugzilla:
> > > >     > > > >>
> > > >     > > > >> https://bugzilla.kernel.org/show_bug.cgi?id=221461
> > > >     > > > >>
> > > >     > > > >> To quote:
> > > >     > > > >>
> > > >     > > > >>> Dutch Ingraham 2026-05-03 18:12:49 UTC
> > > >     > > > >>>
> > > >     > > > >>> Kernels >=7.0.1 contain a regression as to Creative Sound
> > > >     Blaster Z SE
> > > >     > > > >>> discrete pci sound card, but not integrated. Kernels 7.0.1,
> > > >     7.0.2, and
> > > >     > > > >>> 7.0.3 tested; 7.0.0 not tested. Reverting to any 6.18.x or
> > > >     6.12.x does
> > > >     > > > >>> not present the issue.
> > > >     > > > >>>
> > > >     > > > >>> Specifically, using pipewire managed by pavucontrol, on both
> > > >     Gentoo and
> > > >     > > > >>> Arch Linux, when both external speakers and headphones are
> > > >     connected,
> > > >     > > > >>> all sound is routed through the headphones regardless of
> > > >     whether settings
> > > >     > > > >>> are set to Line Out/Speaker or Line Out/Headphones; there is no
> > > >     speaker
> > > >     > > > >>> output. If headphones are disconnected, without reboot,
> > > >     speakers work;
> > > >     > > > >>> reconnect headphones, without reboot, sound reverts to
> > > >     headphones.
> > > >     > > > >>>
> > > >     > > > >>> Kernel: 7.0.3, Gentoo compiled from source using olddefconfig
> > > >     on 6.18.24
> > > >     > > > >>>               .config; Arch standard release
> > > >     > > > >>> 'lspci -nnk | grep -i audio' attached
> > > >     > > > >>> 'dmesg | grep -i audio' for 7.0.3 and 6.18.24 attached
> > > >     > > > >>> pipewire-1.6.4 on both Gentoo and Arch Linux
> > > >     > > > >>> alsa-firmware-1.2.4 on both Gentoo and Arch Linux
> > > >     > > > >>> 'cat /proc/sys/kernel/tainted' returns 0 for both Gentoo and
> > > >     Arch Linux
> > > >     > > > >>>
> > > >     > > > >>> Processor             :       AMD Ryzen7 5700G
> > > >     > > > >>> Motherboard           :       Asus Prime X570-Pro
> > > >     > > > >>> RAM                           :       Patriot Viper Steel DDR-4
> > > >     @3200mHz
> > > >     > > > >>> Graphics        :   ASRock AMD Radeon RX 7600 Challenger 8GB OC
> > > >     > > > >>> Sound Card      :   Creative Sound Blaster Z SE
> > > >     > > > >>>
> > > >     > > > >>>
> > > >     > > > >>> Expected outcome: ability to choose output to either speakers
> > > >     or head-
> > > >     > > > >>> phones while both are plugged-in to sound card.
> > > >     > > > >>>
> > > >     > > > >>> Workaround: none known.
> > > >     > > > >>
> > > >     > > > >> See the ticket for more details. One of them: 7.1-rc2 is
> > > >     affected as
> > > >     > > > >> well. Reporter is CCed. Forwarded this to ensure this report
> > > >     makes it to
> > > >     > > > >> the interested parties, as bugzilla might not have forwarded
> > > >     this.
> > > >     > > > >>
> > > >     > > > >> Dutch Ingraham: if nobody within a few days has an idea why this
> > > >     > > > >> happens, you will likely have to use a git bisection to get this
> > > >     resolved.
> > > >     > > > >
> > > >     > > > > As there have been many significant changes in ctxfi since 6.18,
> > > >     it's
> > > >     > > > > hard to tell what broke.  Please go git bisect.
> > > >     > > > >
> > > >     > > > >
> > > >     > > > > thanks,
> > > >     > > > >
> > > >     > > > > Takashi
> > > >     > > > >
> > > >     > > >
> > > >     > > > Creative Sound Blaster Z-series uses the snd_hda_codec_ca0132
> > > >     driver,
> > > >     > > > not snd_ctxfi. The dmesg logs in the bugzilla shows only ca0132
> > > >     > > > entries.
> > > >     > >
> > > >     > > Ah, sorry, then it's easier.  The only major change is the
> > > >     > > commit 778031e1658d206a52bf9491c91ae5d4f4a2509d
> > > >     > >     ALSA: hda/ca0132: Set HP/Speaker auto-detect default from
> > > >     headphone pin verb
> > > >     > >
> > > >     > > Try to revert this one.
> > > >     > >
> > > >     > >
> > > >     > > thanks,
> > > >     > >
> > > >     > > Takashi
> > > >     > >
> > > >     >
> > > >     > I can confirm this seems like a good candidate. I built and tested
> > > >     6.19.14
> > > >     > and 7.0. On 6.19.14, speakers work as expected; on 7.0, speakers are
> > > >     not
> > > >     > working as expected and the offending patch is included in the 7.0
> > > >     patchset.
> > > >     >
> > > >     > Thank you all for your work on this issue.
> > > >
> > > >     OK, then let's put Matt to the party.
> > > >     Matt, could you help for debugging the regression?
> > > >
> > > >     Takashi
> > > >
> > > > I can confirm the regression here on my 2013 Chromebook Pixel w/CA0132.
> > > >
> > > > Looking more closely, the issue is that tVNID_HP_ASEL and VNID_HP_SEL are
> > > > mutually exclusive selection sources in ca0132_select_out() /
> > > > ca0132_alt_select_out(),
> > > > and auto-detect always "wins." So, enabling auto-detect effectively disabled
> > > > user
> > > > override.
> > > >
> > > > While reverting would fix this problem, it would reintroduce the problem of
> > > > jack-detect being
> > > > ignored completely. A better solution would be to default to auto-detect, but
> > > > allow manual selection
> > > > to override. Here's a quick patch I whipped up that should resolve the issue
> > > > (untested though):
> > > > ---
> > > > From: Matt DeVillier <matt.devillier@gmail.com>
> > > > Date: Thu, 7 May 2026 09:58:41 -0500
> > > > Subject: [PATCH] ALSA: hda/ca0132: Disable auto-detect on manual output
> > > > select
> > > >
> > > > Commit 778031e1658d ("ALSA: hda/ca0132: Set HP/Speaker
> > > > auto-detect default from headphone pin verb") enables HP/Speaker
> > > > auto-detect by default when the headphone pin supports presence detect.
> > > >
> > > > With auto-detect enabled, ca0132_select_out() and ca0132_alt_select_out()
> > > > choose the output from jack presence instead of the manual HP/Speaker
> > > > selection. This means selecting speaker output while headphones are
> > > > plugged in updates the control state, but audio still routes to the
> > > > headphones.
> > > >
> > > > Treat an explicit manual output selection as a request to leave
> > > > auto-detect mode. Clear the HP/Speaker auto-detect switch before applying
> > > > the manual selection, and notify userspace so the auto-detect control
> > > > state is updated in mixers. Do this for both the normal HP/Speaker
> > > > Playback Switch and the alternate Output Select control used by desktop
> > > > cards.
> > > >
> > > > This keeps auto-detect enabled by default for devices with jack presence
> > > > detection, while preserving the expected behavior that a manual output
> > > > choice takes effect immediately.
> > > >
> > > > Fixes: 778031e1658d ("ALSA: hda/ca0132: Set HP/Speaker auto-detect default
> > > > from headphone pin verb")
> > > > Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
> > > > ---
> > > >  sound/hda/codecs/ca0132.c | 44 +++++++++++++++++++++++++++++++-------------
> > > >  1 file changed, 31 insertions(+), 13 deletions(-)
> > > >
> > > > diff --git a/sound/hda/codecs/ca0132.c b/sound/hda/codecs/ca0132.c
> > > > index ad533b04ab29..be565ffaade0 100644
> > > > --- a/sound/hda/codecs/ca0132.c
> > > > +++ b/sound/hda/codecs/ca0132.c
> > > > @@ -5498,6 +5498,30 @@ static int zxr_headphone_gain_set(struct hda_codec
> > > > *codec, long val)
> > > >   return 0;
> > > >  }
> > > (snip)
> > >
> > > It looks like that the patch is malformed by your mailer.
> > > For avoiding unneeded troubles, please fix the setup or give an
> > > attachment, too.
> > >
> > >
> > > thanks,
> > >
> > > Takashi
> > 
> > My apologies, forgot to ensure text-mode sending when I replied.
> > Hopefully better this time.
> > 
> > regards,
> > Matt
> > 
> 
> Patched against originally non-working v7.0. Now, works as expected; can
> choose Line Out / Speaker or Line Out / Headphones and default holds
> across reboots.
> 
> Thank you Matt and all others who gave your attention to this issue.

Thanks for confirmation.  Now I applied the fix.


Takashi

      reply	other threads:[~2026-05-15  9:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-06  6:24 [regression] ctxfi: no speaker output when headphones connected on >=7.0.x Thorsten Leemhuis
2026-05-06  7:05 ` Takashi Iwai
2026-05-06 22:06   ` Harin Lee
2026-05-07  6:30     ` Takashi Iwai
2026-05-07 12:47       ` Dutch Ingraham
2026-05-07 13:24         ` Takashi Iwai
     [not found]           ` <CAFTm+6Bj_dWdSifUoS7hZ3kfVambXK_=7jyGuHp33RZoSEGVUA@mail.gmail.com>
     [not found]             ` <CAFTm+6Dtsc8z7s4Gj+6A9zGpXyj93tQEbkzQLu13S36SmhB8Zw@mail.gmail.com>
2026-05-07 15:06               ` Matt DeVillier
2026-05-07 15:07             ` Takashi Iwai
2026-05-07 15:12               ` Matt DeVillier
2026-05-07 18:23                 ` Dutch Ingraham
2026-05-15  9:20                   ` 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=87ik8pt4eq.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=matt.devillier@gmail.com \
    --cc=me@harin.net \
    --cc=perex@perex.cz \
    --cc=regressions@leemhuis.info \
    --cc=regressions@lists.linux.dev \
    --cc=stoa@gmx.us \
    --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