Re: [PATCH] ALSA: usb-audio: Add iface reset and delay quirk for JKY Technology Q2A

Rong Zhang <[email protected]>
Newsgroups gmane.linux.sound,gmane.linux.kernel
Message-ID <[email protected]>
Hi Takashi, Lianqin,

On Fri, 2026-07-24 at 08:29 +0000, 胡连勤 wrote:
> Setting up the interface when suspended/resuming fails on this card.
> Adding a reset and delay quirk will eliminate this problem.
> 
> Note: This device misuses the Apple VID (0x05ac) & PID (0x110b).

The device's VID conflicts with Apple's, but there is no PID conflict,
right?

If a manufacturer uses other's VID, it's a VID conflict. The device
falls into this category.

If the manufacturer uses the same PID among different products, it's a
PID conflict. I don't think it's the case of the device, unless JKY
Technology reuses PID 0x110b for products other than Q2A.

> 
> usb 1-1: New USB device found, idVendor=05ac, idProduct=110b
> usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> usb 1-1: Product: Q2A
> usb 1-1: Manufacturer: JKY Technology
> usb 1-1: SerialNumber: 330270D2251225
> 
> Signed-off-by: Lianqin Hu <[email protected]>
> ---
>  sound/usb/quirks.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
> index 0de7c9d94259..ad2ce384e32d 100644
> --- a/sound/usb/quirks.c
> +++ b/sound/usb/quirks.c
> @@ -2200,6 +2200,8 @@ struct usb_audio_quirk_flags_table {
>  
>  static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
>  	/* Device and string descriptor matches */
> +	DEVICE_STRING_FLG(0x05ac, 0x110b, "JKY Technology", "Q2A", /* JKY Technology Q2A */

Hence, I don't think it's necessary to match "Q2A" here.

Meanwhile, in any case, the comment should describe the VID/PID conflict
instead of repeating the string descriptor(s) being matched, and the
strings should break into another line.

See how commit b13031ca112a ("ALSA: usb-audio: Deconflict VID between
Focusrite Novation & MV-SILICON") describe the conflict and arrange
lines.

> +		   QUIRK_FLAG_FORCE_IFACE_RESET | QUIRK_FLAG_IFACE_DELAY),

Bad indent.

This is the first DEVICE_STRING_FLG() item, so please don't set a bad
example. I would prefer:

	DEVICE_STRING_FLG(0x05ac, 0x110b, /* VID conflicts with Apple */
			  "JKY Technology", NULL /* Q2A */,
			  QUIRK_FLAG_FORCE_IFACE_RESET | QUIRK_FLAG_IFACE_DELAY),

Thanks,
Rong

>  
>  	/* Device matches */
>  	DEVICE_FLG(0x001f, 0x0b21, /* AB13X USB Audio */
> -- 
> 2.39.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.