Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Faaris Ansari <faarisansari@googlemail.com>
Cc: "Sasha Levin" <sashal@kernel.org>,
	stable@vger.kernel.org, regressions@lists.linux.dev,
	linux-sound@vger.kernel.org,
	"Cássio Gabriel" <cassiogabrielcontato@gmail.com>,
	"Takashi Iwai" <tiwai@suse.com>,
	"Jaroslav Kysela" <perex@perex.cz>,
	"Faaris Ansari" <faaris.ansari@gmail.com>
Subject: Re: [REGRESSION] Audient EVO4 hardware volume control now requires quirk
Date: Tue, 29 Sep 2026 14:38:03 +0200	[thread overview]
Message-ID: <87mrt01bdg.wl-tiwai@suse.de> (raw)
In-Reply-To: <87tsn838gk.wl-tiwai@suse.de>

On Tue, 29 Sep 2026 07:58:03 +0200,
Takashi Iwai wrote:
> 
> On Tue, 29 Sep 2026 00:39:05 +0200,
> Sasha Levin wrote:
> > 
> > > [   80.940668] usb 3-1: cannot set ctl value: req = 0x1, wValue = 0x203,
> > > wIndex = 0xa00, type = 4, data = 0x0/0x81
> > [...]
> > > numid=4,iface=MIXER,name='EVO4  Playback Volume'
> > >    ; type=INTEGER,access=rw---R--,values=4,min=0,max=254,step=0
> > >    : values=182,182,0,0
> > 
> > Thanks, that narrows it down.
> > 
> > Every failure is SET_CUR of the Volume control on feature unit 10, channel 3
> > (wValue 0x0203, wIndex 0x0a00). That unit is 'EVO4  Playback Volume' and
> > advertises read/write volume on all four channels. mixer_ctl_feature_put()
> > writes channels 1 and 2, then returns the channel 3 error, so the hardware
> > volume changes while userspace is told the write failed and adds software
> > attenuation on top. Faaris sees the same on 7.3-rc5, so this is a mainline
> > regression from 87a6f2fa6e6c ("ALSA: usb-audio: Propagate write errors in
> > generic mixer put callbacks").
> 
> Right.  So a simple fix would be to just to set the IGNORE_CTL_ERROR
> quirk flag like below.  One of iD14 models has already this flag, so
> it might be safer to set to all Audient devices.

... and below is such a version to cover all Audient devices:

Faaris, please let us know if this (or previous) one actually works
for you.  Once after confirmation, I'll submit the proper patch for
upstream.


thanks,

Takashi

-- 8< --
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2688,8 +2688,6 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
 		   QUIRK_FLAG_FORCE_IFACE_RESET | QUIRK_FLAG_IFACE_DELAY),
 	DEVICE_FLG(0x262a, 0x9302, /* ddHiFi TC44C */
 		   QUIRK_FLAG_DSD_RAW),
-	DEVICE_FLG(0x2708, 0x0002, /* Audient iD14 */
-		   QUIRK_FLAG_IGNORE_CTL_ERROR),
 	DEVICE_FLG(0x2772, 0x0502, /* Musical Fidelity M6s DAC */
 		   0), /* for avoiding QUIRK_FLAG_DSD_RAW with vendor match */
 	DEVICE_FLG(0x2912, 0x30c8, /* Audioengine D1 */
@@ -2788,6 +2786,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
 		   QUIRK_FLAG_DSD_RAW),
 	VENDOR_FLG(0x2622, /* IAG Limited devices */
 		   QUIRK_FLAG_DSD_RAW),
+	VENDOR_FLG(0x2708, /* Audient devices */
+		   QUIRK_FLAG_IGNORE_CTL_ERROR),
 	VENDOR_FLG(0x2772, /* Musical Fidelity devices */
 		   QUIRK_FLAG_DSD_RAW),
 	VENDOR_FLG(0x278b, /* Rotel? */

  reply	other threads:[~2026-09-29 12:38 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-26 13:03 [REGRESSION] Audient EVO4 hardware volume control now requires quirk Faaris Ansari
2026-09-27 14:26 ` Sasha Levin
2026-09-27 22:50   ` Faaris Ansari
2026-09-28 16:46     ` Sasha Levin
2026-09-28 16:53       ` Faaris Ansari
2026-09-28 22:39         ` Sasha Levin
2026-09-29  5:58           ` Takashi Iwai
2026-09-29 12:38             ` Takashi Iwai [this message]
2026-09-29 13:14               ` Takashi Iwai
2026-09-29 14:24                 ` Faaris Ansari
2026-09-29 14:28                   ` Takashi Iwai
2026-09-29 19:46                     ` Christian Ruppert
2026-10-02 14:19                     ` Sasha Levin
2026-10-02 14:37                       ` Takashi Iwai
2026-10-02 21:10                         ` Sasha Levin
2026-10-03  1:30                           ` Sasha Levin

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=87mrt01bdg.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=cassiogabrielcontato@gmail.com \
    --cc=faaris.ansari@gmail.com \
    --cc=faarisansari@googlemail.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=regressions@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox