Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Geraldo Nascimento <geraldogabriel@gmail.com>
To: Nandakumar Edamana <nandakumar@nandakumar.co.in>
Cc: alsa-devel@alsa-project.org
Subject: Re: Behringer UMC202HD issues and a partial solution
Date: Thu, 13 Jan 2022 16:00:28 -0300	[thread overview]
Message-ID: <YeB2zEnPlwVEKbTI@geday> (raw)
In-Reply-To: <d61a41eb-a820-b1ca-dcf6-f447f80494a8@nandakumar.co.in>

On Thu, Jan 13, 2022 at 08:07:49PM +0530, Nandakumar Edamana wrote:
> Trying to make my Behringer UMC202HD audio interface work with GNU/Linux.
> While doing so, I managed to make a warning disappear by editing a file in
> the kernel source. The main issue I'm having with the interface isn't 
> gone, and
> I am not sure whether to bother you people with that now. However I'd 
> like to
> read your comments on the edit I made regarding the warning.
> 
> Details:
> 
> - Product: 1397:0507 BEHRINGER International GmbH UMC202HD 192k
> - dmesg warning: clock source 41 is not valid, cannot use
> - kernel: linux-5.15.13
> - Edit that made the warning disappear:
> 
> $ diff -u sound/usb/clock.c.orig sound/usb/clock.c
> --- sound/usb/clock.c.orig    2022-01-13 08:14:49.555281286 +0530
> +++ sound/usb/clock.c    2022-01-13 08:18:38.004618792 +0530
> @@ -180,7 +180,11 @@
>        * 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) ||
> +        /* Trying the same for BEHRINGER International GmbH UMC202HD 
> 192k */
> +        chip->usb_id == USB_ID(0x1397, 0x0507)
> +        )
> +    {
>           count = 0;
> 
>           while ((!ret) && (count < 50)) {
> 
> 
> 
> Yes, I was just adding the ID of UMC202HD to an existing workaround. I'm not
> sure if the device's clock should actually be accepted (but I think so 
> because
> the retry works, right?), or if two seconds is the right delay for UMC202HD.
> 
> The real issue I'm having with this device is related to the periodic
> stuttering/pops while playback (recording is okay).

Hi Nandakumar,

You made the dmesg warning go away, but that didn't necessarily solve
the underlying issue. May I ask that you post the "lsusb -v -d
1397:0507" ?

I may ask you to activate dyndbg for the snd-usb-audio module next.

> I remember having read that
> UMC20x is well-supported in Linux. Maybe now they're using a different
> firmware version or something?

Seems to be a different revision indeed, but don't worry, most of the
time these bugs are fixable.

> If you are interested, here is a list of 
> things
> I've already tried:
> 
> - Different ports, including USB 2.0, and disabling xHCI using `setpci`
> - Disconnecting other USB devices
> - Disabling wireless
> - Making sure speech-dispatcher isn't running
> - Old and new GNU/Linux distros on different computers
> - Switching sound servers (PulseAudio and JACK) and direct ALSA
> - Different sampling rates, buffer sizes, etc.
> - Lower volume levels
> - Making sure there are no xruns
> - tsched=0 and 1 for module-udev-detect (pulse)
> - realtime-scheduling, high-priority, and nice-level (pulse)
> - Choosing Performance mode for CPU Governer and disabling Intel Boost
>    (as recommended by Ubuntu Studio dashboard)
> - lowlatency kernel
> - A recent kernel (v5.15.13) built from source with oldconfig
> - Clock source workaround in sound/usb/clock.c
> - Quirk entries in sound/usb/implicit.c (I won't claim I did it right)
> 
> Again, I'd like to hear your comments on the clock detection workaround 
> first,
> since that's the only thing I seem to have solved with all these hours spent
> (except for learning a lot, of course). But if you have time, please 
> consider
> the second (main) issue also. Maybe I'm posting this in the wrong place; 
> if so,
> please let me know where to repost it (official forum or a kernel 
> mailing list).

alsa-devel is the place where finished contributions land, but it's also
a place to ask for lower-level help in ALSA development. Don't worry,
you are in the right place.

> 
> Thank you,
> 
> -- 
> Nandakumar Edamana
> https://nandakumar.org
> 
> GPG Key: https://nandakumar.org/contact/gpgkey.asc
> GPG Key Fingerprint: BA6B 8FDE 644F F861 B638  3E2F 45D6 05FC 646A F75D
> 

  reply	other threads:[~2022-01-13 19:01 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-13 14:37 Behringer UMC202HD issues and a partial solution Nandakumar Edamana
2022-01-13 19:00 ` Geraldo Nascimento [this message]
2022-01-14  2:34   ` Nandakumar Edamana
2022-01-14  3:41     ` Geraldo Nascimento
2022-01-14  4:36       ` Nandakumar Edamana
2022-01-14  7:44         ` Geraldo Nascimento
2022-01-14 13:39           ` Nandakumar Edamana
2022-01-14 22:28             ` Geraldo Nascimento
     [not found]               ` <5fba3e63-6fd2-de1c-1564-ac6b8870e730@nandakumar.co.in>
2022-01-16  1:00                 ` Geraldo Nascimento
2022-01-18 11:20                   ` Nandakumar Edamana
2022-01-18 19:20                     ` Geraldo Nascimento

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=YeB2zEnPlwVEKbTI@geday \
    --to=geraldogabriel@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=nandakumar@nandakumar.co.in \
    /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