All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Zipdox <zipdox@zipdox.net>
Cc: linux-sound@vger.kernel.org, perex@perex.cz,
	linux-kernel@vger.kernel.org, tiwai@suse.com
Subject: Re: [PATCH] USB Audio Class 2 Mixer unit support for GET_CUR, SET_CUR and RANGE
Date: Tue, 15 Sep 2026 13:08:20 +0200	[thread overview]
Message-ID: <87bj9yn55n.wl-tiwai@suse.de> (raw)
In-Reply-To: <d46fcac6-bd7e-4fc4-95e1-4e8d39f92ad3@zipdox.net>

On Tue, 15 Sep 2026 10:54:00 +0200,
Zipdox wrote:
> 
> Hello,
> 
> The USB Audio Mixer Unit driver (sound/usb/mixer.c) sends audio class
> 1.0 format control messages to devices, regardless of the actual audio
> class version. This means audio class 2.0 devices will receive incorrect
> messages, stall, and cause the driver to error (e.g. alsamixer exits
> with a broken pipe error).

Hmm, for UAC2, UAC_GET_CUR & co isn't passed as is at all, but the
call is translated to UAC2_CS_CUR and UAC2_CS_RANGE accordingly in
get_ctl_value_v2() (that is called from get_ctl_value()
conditionally).  So this translation path was skipped somehow with
your device...?


> This patch implements the GET_CUR, SET_CUR,
> and RANGE control requests for mixer units according to the Audio Class
> 2.0 specification.
> 
> I have one question though, which has to do with the get_cur_mix_raw
> function. It states "channel = 0: master, 1 = first channel", but as far
> as I know the spec doesn't specify a master control for mixer units. I
> implemented it so that channel 0 results the channel 1 value, but maybe
> some other solution is desirable.
> 
> From: Zipdox <zipdox@zipdox.net>
> Date: Tue, 15 Sep 2026 10:12:01 +0200
> Subject: [PATCH] USB Audio Class 2 Mixer unit support for GET_CUR, SET_CUR and
>  RANGE
> 
> Signed-off-by: Zipdox <zipdox@zipdox.net>

Could you try to reformat in a proper patch format?
Also, it looks containing many unnecessary / unrelated changes that
make review more difficult.  Please try to concentrate only on the
change you really need.


thanks,

Takashi

  reply	other threads:[~2026-09-15 11:08 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-15  8:54 [PATCH] USB Audio Class 2 Mixer unit support for GET_CUR, SET_CUR and RANGE Zipdox
2026-09-15 11:08 ` Takashi Iwai [this message]
2026-09-15 12:54   ` Zipdox
2026-09-15 14:19     ` Takashi Iwai
2026-09-16  7:43       ` Zipdox
2026-09-16 15:40         ` Takashi Iwai
2026-09-16 16:58           ` Takashi Iwai
2026-09-16 18:22             ` Takashi Iwai
2026-09-17 14:23               ` Zipdox
2026-09-17 14:49                 ` Takashi Iwai
2026-09-17 14:54                 ` Zipdox
2026-09-17 16:15                   ` Takashi Iwai
2026-09-17 16:33                     ` Zipdox
2026-09-17 16:40                       ` Takashi Iwai
2026-09-18  8:35                         ` Zipdox
2026-09-28 10:59                           ` Takashi Iwai
2026-10-05 13:54                             ` Zipdox
     [not found] <2dfe5d78-9c87-42a2-a306-ab5c58b17756@zipdox.net>
2026-10-05  9:55 ` Zipdox

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=87bj9yn55n.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    --cc=zipdox@zipdox.net \
    /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.