From: Ikjoon Jang <ikjn@chromium.org> To: Takashi Iwai <tiwai@suse.de> Cc: Joakim Tjernlund <Joakim.Tjernlund@infinera.com>, Jaroslav Kysela <perex@perex.cz>, alsa-devel@alsa-project.org, Takashi Iwai <tiwai@suse.com>, Gregor Pintar <grpintar@gmail.com>, linux-usb@vger.kernel.org, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Dylan Robinson <dylan_robinson@motu.com>, Kai-Heng Feng <kai.heng.feng@canonical.com>, Olivia Mackintosh <livvy@base.nu>, Alexander Tsoy <alexander@tsoy.me>, open list <linux-kernel@vger.kernel.org> Subject: Re: [PATCH] ALSA: usb-audio: Apply sample rate quirk to Logitech Connect Date: Mon, 29 Mar 2021 14:23:52 +0800 [thread overview] Message-ID: <CAATdQgAYrq7sHJQN=_5ipH0N_kbixjac=BLFCYv5jTScH_c+Lw@mail.gmail.com> (raw) In-Reply-To: <s5ho8f8ogx8.wl-tiwai@suse.de> On Wed, Mar 24, 2021 at 8:49 PM Takashi Iwai <tiwai@suse.de> wrote: > > On Wed, 24 Mar 2021 13:03:14 +0100, > Ikjoon Jang wrote: > > > > On Wed, Mar 24, 2021, 7:16 PM Joakim Tjernlund <Joakim.Tjernlund@infinera.com> > > wrote: > > > > On Wed, 2021-03-24 at 18:51 +0800, Ikjoon Jang wrote: > > > Logitech ConferenceCam Connect is a compound USB device with UVC and > > > UAC. Not 100% reproducible but sometimes it keeps responding STALL to > > > every control transfer once it receives get_freq request. > > > > > > This patch adds 046d:0x084c to a snd_usb_get_sample_rate_quirk list. > > > > > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=203419 > > > Signed-off-by: Ikjoon Jang <ikjn@chromium.org> > > > > Most Logitech USB headset I got needs a delay in snd_usb_ctl_msg_quirk() > > Have you tried to add say 20 ms delay in there? > > > > I didn't try that. But it sounds reasonable to me. > > > > let me try that quirk here. If that is the case, HID might need that delay > > also. Logitech Group webcam had a similar problem on control xfer of > > get_report from an another interface for HID. > > The Logitech devices with 046d:* should be covered generally in > snd_usb_ctl_msg_quirk(), so I guess it's a different problem. > But please check it first. > > > And 20ms can be too long if it's applied to every control transfer. I will > > test the device with shorter delay if you didn't try it before. > > Actually the delay applied to Logitech devices is from 1 to 2ms, not > 20ms. The 20ms delay is applied for some other devices. But if > extending the delay fixes the problem, we need to reconsider the delay > length. I tested this Logitech device with various delays 2..20ms in snd_usb_ctl_msg_quirk() but it didn't help. Disregarding the delay between control transfers, This device is always stuck at get_cur, responding STALL to all control transfers. [ 24.045618] usb 1-1.2.1.1: 1:1: cannot get freq at ep 0x82 [ 24.167475] usb 1-1.2.1.1: 2:0: cannot get min/max values for control 2 (id 2) [ 24.287393] usb 1-1.2.1.1: 6:0: cannot get min/max values for control 2 (id 6) [ 24.289854] usbcore: registered new interface driver snd-usb-audio [ 24.877073] usb 1-1.2.1.1: 2:1: usb_set_interface failed (-32) And I've also found that in some other platforms (with the same kernel), this device fails at get_freq - timeout with NYETs or NAKs (instead of STALL), and succeeded in following set_interface even without any delays I've tried but couldn't find any differences between the two. ;-( So until now, I think this approach of skipping get_rate is the only one possible workaround for Logitech Connect. > > > Takashi
WARNING: multiple messages have this Message-ID (diff)
From: Ikjoon Jang <ikjn@chromium.org> To: Takashi Iwai <tiwai@suse.de> Cc: alsa-devel@alsa-project.org, Dylan Robinson <dylan_robinson@motu.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, linux-usb@vger.kernel.org, Takashi Iwai <tiwai@suse.com>, Joakim Tjernlund <Joakim.Tjernlund@infinera.com>, Alexander Tsoy <alexander@tsoy.me>, Kai-Heng Feng <kai.heng.feng@canonical.com>, Gregor Pintar <grpintar@gmail.com>, Olivia Mackintosh <livvy@base.nu>, open list <linux-kernel@vger.kernel.org> Subject: Re: [PATCH] ALSA: usb-audio: Apply sample rate quirk to Logitech Connect Date: Mon, 29 Mar 2021 14:23:52 +0800 [thread overview] Message-ID: <CAATdQgAYrq7sHJQN=_5ipH0N_kbixjac=BLFCYv5jTScH_c+Lw@mail.gmail.com> (raw) In-Reply-To: <s5ho8f8ogx8.wl-tiwai@suse.de> On Wed, Mar 24, 2021 at 8:49 PM Takashi Iwai <tiwai@suse.de> wrote: > > On Wed, 24 Mar 2021 13:03:14 +0100, > Ikjoon Jang wrote: > > > > On Wed, Mar 24, 2021, 7:16 PM Joakim Tjernlund <Joakim.Tjernlund@infinera.com> > > wrote: > > > > On Wed, 2021-03-24 at 18:51 +0800, Ikjoon Jang wrote: > > > Logitech ConferenceCam Connect is a compound USB device with UVC and > > > UAC. Not 100% reproducible but sometimes it keeps responding STALL to > > > every control transfer once it receives get_freq request. > > > > > > This patch adds 046d:0x084c to a snd_usb_get_sample_rate_quirk list. > > > > > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=203419 > > > Signed-off-by: Ikjoon Jang <ikjn@chromium.org> > > > > Most Logitech USB headset I got needs a delay in snd_usb_ctl_msg_quirk() > > Have you tried to add say 20 ms delay in there? > > > > I didn't try that. But it sounds reasonable to me. > > > > let me try that quirk here. If that is the case, HID might need that delay > > also. Logitech Group webcam had a similar problem on control xfer of > > get_report from an another interface for HID. > > The Logitech devices with 046d:* should be covered generally in > snd_usb_ctl_msg_quirk(), so I guess it's a different problem. > But please check it first. > > > And 20ms can be too long if it's applied to every control transfer. I will > > test the device with shorter delay if you didn't try it before. > > Actually the delay applied to Logitech devices is from 1 to 2ms, not > 20ms. The 20ms delay is applied for some other devices. But if > extending the delay fixes the problem, we need to reconsider the delay > length. I tested this Logitech device with various delays 2..20ms in snd_usb_ctl_msg_quirk() but it didn't help. Disregarding the delay between control transfers, This device is always stuck at get_cur, responding STALL to all control transfers. [ 24.045618] usb 1-1.2.1.1: 1:1: cannot get freq at ep 0x82 [ 24.167475] usb 1-1.2.1.1: 2:0: cannot get min/max values for control 2 (id 2) [ 24.287393] usb 1-1.2.1.1: 6:0: cannot get min/max values for control 2 (id 6) [ 24.289854] usbcore: registered new interface driver snd-usb-audio [ 24.877073] usb 1-1.2.1.1: 2:1: usb_set_interface failed (-32) And I've also found that in some other platforms (with the same kernel), this device fails at get_freq - timeout with NYETs or NAKs (instead of STALL), and succeeded in following set_interface even without any delays I've tried but couldn't find any differences between the two. ;-( So until now, I think this approach of skipping get_rate is the only one possible workaround for Logitech Connect. > > > Takashi
next prev parent reply other threads:[~2021-03-29 6:25 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-03-24 10:51 [PATCH] ALSA: usb-audio: Apply sample rate quirk to Logitech Connect Ikjoon Jang 2021-03-24 10:51 ` Ikjoon Jang 2021-03-24 11:16 ` Joakim Tjernlund 2021-03-24 11:16 ` Joakim Tjernlund 2021-03-24 12:03 ` Ikjoon Jang 2021-03-24 12:05 ` Dmitry Panchenko | d-Systems 2021-03-24 12:49 ` Takashi Iwai 2021-03-24 12:49 ` Takashi Iwai 2021-03-25 11:01 ` Joakim Tjernlund 2021-03-25 11:01 ` Joakim Tjernlund 2021-03-29 6:23 ` Ikjoon Jang [this message] 2021-03-29 6:23 ` Ikjoon Jang 2021-03-29 11:23 ` Takashi Iwai 2021-03-29 11:23 ` Takashi Iwai
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='CAATdQgAYrq7sHJQN=_5ipH0N_kbixjac=BLFCYv5jTScH_c+Lw@mail.gmail.com' \ --to=ikjn@chromium.org \ --cc=Joakim.Tjernlund@infinera.com \ --cc=alexander@tsoy.me \ --cc=alsa-devel@alsa-project.org \ --cc=dylan_robinson@motu.com \ --cc=gregkh@linuxfoundation.org \ --cc=grpintar@gmail.com \ --cc=kai.heng.feng@canonical.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-usb@vger.kernel.org \ --cc=livvy@base.nu \ --cc=perex@perex.cz \ --cc=tiwai@suse.com \ --cc=tiwai@suse.de \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.