mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-31 14:04:27 -04:00
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:
committed by
Takashi Iwai
parent
b3be0e5bed
commit
4c0ec35e01
@@ -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 */
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user