ALSA: usb-audio: Skip mixer creation on M-Audio Venom

The M-Audio Venom (0763:2084) does not answer any GET_CUR request
of its feature units, hanging up the USB microcontroller and
"responding" with timeouts. So the mixer building lasts around 47
seconds, and the device does not stream at all.

The same GET_CUR requests issued through libusb (with no kernel
driver bound) complete correctly and blazingly fast. So it seems
to only happen during the initial probe.

I defined an explicit composite quirk to bypass the mixer creation,
as it is not needed (the synth already comes with volume controls).

With both this and the device flag applied, the synth works
flawlessly.

Signed-off-by: Federico Valentín Andrade <fandrade@frba.utn.edu.ar>
Link: https://patch.msgid.link/20260824140211.17003-3-fandrade@frba.utn.edu.ar
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Federico Valentín Andrade
2026-08-24 11:02:11 -03:00
committed by Takashi Iwai
parent b3be0e5bed
commit 4c0ec35e01

View File

@@ -1814,6 +1814,28 @@ YAMAHA_DEVICE(0x7010, "UB99"),
}
}
},
{
/*
* M-Audio Venom
*
* The AudioControl interface times out on every GET_CUR request,
* which adds around 47 seconds to the card registration and
* freezes the device, blocking streaming.
* Using an explicit composite quirk to skip the mixer entirely.
*/
USB_DEVICE_VENDOR_SPEC(0x0763, 0x2084),
QUIRK_DRIVER_INFO {
.vendor_name = "M-Audio",
.product_name = "Venom",
QUIRK_DATA_COMPOSITE {
{ QUIRK_DATA_IGNORE(0) },
{ QUIRK_DATA_STANDARD_AUDIO(1) },
{ QUIRK_DATA_STANDARD_AUDIO(2) },
{ QUIRK_DATA_STANDARD_MIDI(3) },
QUIRK_COMPOSITE_END
}
}
},
/* Casio devices */
{