From: Holger Marzen <holger@marzen.de>
To: alsa-devel@alsa-project.org
Subject: MOTU Ultralite AVB: Modulo-8 output channel hopping
Date: Tue, 28 Jul 2020 21:27:42 +0200 (CEST) [thread overview]
Message-ID: <alpine.DEB.2.20.2007282123270.14500@bubu.intern.marzen.de> (raw)
[-- Attachment #1: Type: text/plain, Size: 916 bytes --]
Hi all,
I am using the MOTU Ultralite AVB USB audio interface. With recent
firmwares MOTU uses implicit feedback. Kernel 5.8-rc6 can handle it when
I apply the attached patch with the MOTU signatures.
But both with the old and the new firmware there is an occasional modulo
8 output channel hopping. What goes out to system:playback_1 in jackd
ends on channel 1, 9 or 17 in the interface. Same for system:playback_2.
I can force a hop when changing jackd's buffer size on the fly with
jack_bufsize.
One user reports this issue with ALSA clients, too, so it's probably no
jackd issue.
Since I never found this issue reported from a Windows or Mac user
it may be buried deep in the ALSA kernel code.
For me it seems that flaws/timeouts in the USB communication force this
hopping in the ALSA kernel.
Any ideas how to find out where the hopping happens?
sound/usb/endpoint.c ?
sound/usb/stream.c?
Regards
Holger
[-- Attachment #2: Type: text/plain, Size: 975 bytes --]
--- sound/usb/clock.c.orig 2020-07-25 23:39:23.686915955 +0200
+++ sound/usb/clock.c 2020-07-26 00:03:20.077034626 +0200
@@ -186,7 +186,8 @@
* Sample rate changes takes more than 2 seconds for this device. Clock
* validity request returns false during that period.
*/
- if (chip->usb_id == USB_ID(0x07fd, 0x0004)) {
+ if (chip->usb_id == USB_ID(0x07fd, 0x0004) ||
+ chip->usb_id == USB_ID(0x07fd, 0x0005)) {
count = 0;
while ((!ret) && (count < 50)) {
--- sound/usb/pcm.c.orig 2020-07-25 23:42:57.267196819 +0200
+++ sound/usb/pcm.c 2020-07-25 23:42:28.958577798 +0200
@@ -366,6 +366,10 @@
ep = 0x84;
ifnum = 0;
goto add_sync_ep_from_ifnum;
+ case USB_ID(0x07fd, 0x0005): /* MOTU AVB Series */
+ ep = 0x87;
+ ifnum = 2;
+ goto add_sync_ep_from_ifnum;
case USB_ID(0x07fd, 0x0008): /* MOTU M Series */
case USB_ID(0x31e9, 0x0002): /* Solid State Logic SSL2+ */
case USB_ID(0x0d9a, 0x00df): /* RTX6001 */
reply other threads:[~2020-07-28 19:29 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.DEB.2.20.2007282123270.14500@bubu.intern.marzen.de \
--to=holger@marzen.de \
--cc=alsa-devel@alsa-project.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).