* [PATCH] ALSA: usb-audio: Add quirk flags for AlphaTheta EUPHONIA
@ 2026-05-03 21:15 Anton Swart
2026-05-04 11:29 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Anton Swart @ 2026-05-03 21:15 UTC (permalink / raw)
To: Takashi Iwai, Jaroslav Kysela; +Cc: alsa-devel, linux-kernel, Anton Swart
The AlphaTheta EUPHONIA (VID 0x2b73, PID 0x0047) is a USB Audio
Class 2 DJ mixer that requires implicit feedback for full-duplex
operation. The capture endpoint (0x83 IN, interface 2) acts as the
implicit feedback source for the playback endpoint (0x03 OUT,
interface 1), and the device firmware does not send isochronous
data on the capture endpoint unless the host is simultaneously
sending data on the playback endpoint, i.e. playback must be
started first.
Without QUIRK_FLAG_PLAYBACK_FIRST the kernel waits for capture URBs
before submitting playback URBs, creating a deadlock: the device
waits for playback data and the host waits for capture data.
Without QUIRK_FLAG_GENERIC_IMPLICIT_FB the kernel does not detect
the implicit feedback relationship between the two interfaces.
The same flag combination is already used for the Behringer UMC202HD,
UMC204HD and UMC404HD (0x1397:0x0507/0x0508/0x0509), which exhibit
the identical implicit-feedback topology.
Tested on Raspberry Pi 5 with kernel 6.12.75; continuous full-duplex
streaming at 96 kHz / 24-bit, zero XRUNs.
Signed-off-by: Anton Swart <anton.swart.jhb@gmail.com>
---
sound/usb/quirks.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index f77ff05..b17bdae 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2460,6 +2460,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_GENERIC_IMPLICIT_FB),
DEVICE_FLG(0x2b53, 0x0031, /* Fiero SC-01 (firmware v1.1.0) */
QUIRK_FLAG_GENERIC_IMPLICIT_FB),
+ DEVICE_FLG(0x2b73, 0x0047, /* AlphaTheta EUPHONIA */
+ QUIRK_FLAG_PLAYBACK_FIRST | QUIRK_FLAG_GENERIC_IMPLICIT_FB),
DEVICE_FLG(0x2d95, 0x8011, /* VIVO USB-C HEADSET */
QUIRK_FLAG_CTL_MSG_DELAY_1M),
DEVICE_FLG(0x2d95, 0x8021, /* VIVO USB-C-XE710 HEADSET */
--
2.50.1 (Apple Git-155)
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ALSA: usb-audio: Add quirk flags for AlphaTheta EUPHONIA
2026-05-03 21:15 [PATCH] ALSA: usb-audio: Add quirk flags for AlphaTheta EUPHONIA Anton Swart
@ 2026-05-04 11:29 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-05-04 11:29 UTC (permalink / raw)
To: Anton Swart; +Cc: Jaroslav Kysela, alsa-devel, linux-kernel
On Sun, 03 May 2026 23:15:17 +0200,
Anton Swart wrote:
>
> The AlphaTheta EUPHONIA (VID 0x2b73, PID 0x0047) is a USB Audio
> Class 2 DJ mixer that requires implicit feedback for full-duplex
> operation. The capture endpoint (0x83 IN, interface 2) acts as the
> implicit feedback source for the playback endpoint (0x03 OUT,
> interface 1), and the device firmware does not send isochronous
> data on the capture endpoint unless the host is simultaneously
> sending data on the playback endpoint, i.e. playback must be
> started first.
>
> Without QUIRK_FLAG_PLAYBACK_FIRST the kernel waits for capture URBs
> before submitting playback URBs, creating a deadlock: the device
> waits for playback data and the host waits for capture data.
> Without QUIRK_FLAG_GENERIC_IMPLICIT_FB the kernel does not detect
> the implicit feedback relationship between the two interfaces.
>
> The same flag combination is already used for the Behringer UMC202HD,
> UMC204HD and UMC404HD (0x1397:0x0507/0x0508/0x0509), which exhibit
> the identical implicit-feedback topology.
>
> Tested on Raspberry Pi 5 with kernel 6.12.75; continuous full-duplex
> streaming at 96 kHz / 24-bit, zero XRUNs.
>
> Signed-off-by: Anton Swart <anton.swart.jhb@gmail.com>
Applied now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-05-04 11:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-03 21:15 [PATCH] ALSA: usb-audio: Add quirk flags for AlphaTheta EUPHONIA Anton Swart
2026-05-04 11:29 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox