From nobody Sun Jun 14 04:10:29 2026 Received: from mail-ed1-f48.google.com (mail-ed1-f48.google.com [209.85.208.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CBF02233134 for ; Sun, 3 May 2026 21:15:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777842937; cv=none; b=s61fAiLOAO5y9folPhxvLbi1QTTmSGbUTOksEhs38+nKY3sp6RPOdPXPaNZtbyCXAQcBz7OQ2UKSLWBD3SYnKF8crA+tu5hl2d6BJn1mhkMrDm0jnGl4f3wtxs8NvtWVrJ/smiUbt22hjOwzycPpVUmuVMJa+SU2Mq6PkSAi0MA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777842937; c=relaxed/simple; bh=KLAE9TNE144Sb/Cs6vbeBafr9AhKhTTBb1J8rd3ZS+M=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=pErsmqe8F+s27+/J9X/rF8Xu/ATC7hCDqNUqxC+Xt0gr7l+7yKaBOVOx/mYm9ecoo8l7MgL2y02+2vw7GpxnYPSJzi6kRV6qDPR2Ciolo8j06yyGZoc7xsLJchPq/4DkCWcpA0T5AwD5aT8p2/crUvRFCcKJ1hVDYnuW0/1XA1Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=f3Lz1GB8; arc=none smtp.client-ip=209.85.208.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="f3Lz1GB8" Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-6634bb959a2so4395351a12.1 for ; Sun, 03 May 2026 14:15:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777842934; x=1778447734; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=+9i530jahp7PV00PkPdM/PFCWBZvZf7nDUZmBqax44Y=; b=f3Lz1GB8Cot2u0vdlCv96j9mqHu5BsQ5+8SSBERVZO0fHgeKn7usv1n9Pb7n2R6e5S 5/Vo8Sl6P9jC00a1YROtN4z5hcMI3wgFtk0Uu4kfLD6/72o6d3rcr0lMxyH0YB8/v7kf iYI8fggbZ0MKO7CWtLXhQtIhRIIPwAF6CQc3IdmehM0fFRGA1o7lqIg2i7pZuzFJlooF BLRou0Yc3Ad5f9TEF5w8r+zCJzR5UWVlG5ONxxGQP7aJKCp6JcD0xW/2TiJJRaADmODS v4emDpzLGyn2FQWT4H1v3G97L5n4Jxt/XwRH0ozgwy6ocEdk/bZwBcOPjutecOT5P3+B R3pA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777842934; x=1778447734; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=+9i530jahp7PV00PkPdM/PFCWBZvZf7nDUZmBqax44Y=; b=Yb2ZaAsHavfThDtK8mtkU8XLAnwG0sbirKnwSfx+qA9ZBElIVMHRuiG7BX0KiPd8ME D9Fyze2DZ5DfRV+UkqZIRqWkejGftr5kWQHwWOKO58ikT1cNo6Tg+9tVwcAW/QoEaxxH gQK1mSvqjQ7fKcho265Z+BiW5OU4RFqFKX1PuJRUD1SvDXtAvUheaf4Ow1PdkYr3NMRS 2TasjmzxOPnTER98ylbR47juEyiNrCAYvODvUA/dLmWZsx+LD+rYGtCOgjqX74hWSstu VFtoecv2UXMlZELT7y5dlRV2SCqUCmLCWMzYLBvm8lwOeHxJXMAJJwm1aL69OlFVwXPH Ct5w== X-Forwarded-Encrypted: i=1; AFNElJ/RrS/fpQwUHBHg1CiOlHy+4eMTU0HMUQs7mnXrM0e+hBYxY6SlTWn/f4bzf1AonOYpvj7Cuhw17BkWz+4=@vger.kernel.org X-Gm-Message-State: AOJu0YxH3R0hnbt2Z0OyEXWSIHlZBj/BlluOVdcxk8+BwMY10zcJQFTm SDf2BmWdIJzH9lbOsHsyPjVvc/oW37Fr1qo6O4MH0Kfz05wn8KyI0CEt X-Gm-Gg: AeBDievEMuZV79zzL6326gvlBLVsL8dJd8RyP/AioQ+OwQ7L8aU+g2i/iZpIp7Q+6AV liMHP2OHfPtrA7XYao0AJH0wzr3aBiN9GC4b2PTkNcOBD4JFOtFk80OgXOT27fHNT2UxFnNle1p 5WPez73PzoiIXxsMhIDmXWbu818U3agCVW3nitRpql7lT5aLrPjTVXSgfqsvgMUAo2tN6borVFq h+9KoIJQJ8p9G6eSMIAobezDd2Df7Y0n2HFYjImru7c2L4BS9qCpcLFunCCSSsHJLxdu1Qh1seY qQEAVTcRAUqNiGoYnjt4FCMkUOuHMgfKRMkb+DdDodWiTacf/mlntnzismIIax2NdaxxnzwJoI3 jVgM21KgLrUaEzAJsVriQXze5AnClDEATpmFz1nn52BiP539a6OtYjG+NVA0rcB+qNTMj0CUWyU joD67R14oH/XvFGQbTF3w0vxoKRR+dK5NjgTnh1OsDl1Np93NctHlfkbx69LiQNXYJe+0nliVH2 hPMWy4YRpHBe5AgQTCY6s5U9EQTcJu1hbOt3NZ1MpU= X-Received: by 2002:a17:907:d02:b0:b9d:c374:6e33 with SMTP id a640c23a62f3a-bbffaf3d8e5mr368360766b.26.1777842933836; Sun, 03 May 2026 14:15:33 -0700 (PDT) Received: from Mac.localdomain (c25189.upc-c.chello.nl. [212.187.25.189]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-67b86e97f4bsm2803539a12.13.2026.05.03.14.15.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 03 May 2026 14:15:32 -0700 (PDT) From: Anton Swart To: Takashi Iwai , Jaroslav Kysela Cc: alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Anton Swart Subject: [PATCH] ALSA: usb-audio: Add quirk flags for AlphaTheta EUPHONIA Date: Sun, 3 May 2026 23:15:17 +0200 Message-ID: <20260503211517.14332-1-anton.swart.jhb@gmail.com> X-Mailer: git-send-email 2.50.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" 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 --- 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[] =3D { 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 */ --=20 2.50.1 (Apple Git-155)