diff options
author | Joakim Tjernlund <joakim.tjernlund@infinera.com> | 2017-08-22 08:33:53 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2017-08-22 11:15:15 +0200 |
commit | 07b3b5e9ed807a0d2077319b8e43a42e941db818 (patch) | |
tree | f4c52c8ce485c7753b7d58aede6cd1e60c72d76f /sound/usb | |
parent | dbd7396b4f24e0c3284fcc05f5def24f52c09884 (diff) | |
download | lwn-07b3b5e9ed807a0d2077319b8e43a42e941db818.tar.gz lwn-07b3b5e9ed807a0d2077319b8e43a42e941db818.zip |
ALSA: usb-audio: Add delay quirk for H650e/Jabra 550a USB headsets
These headsets reports a lot of: cannot set freq 44100 to ep 0x81
and need a small delay between sample rate settings, just like
Zoom R16/24. Add both headsets to the Zoom R16/24 quirk for
a 1 ms delay between control msgs.
Signed-off-by: Joakim Tjernlund <joakim.tjernlund@infinera.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/quirks.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index 6a03f9697039..5d2a63248b1d 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -1309,10 +1309,13 @@ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe, && (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) mdelay(20); - /* Zoom R16/24 needs a tiny delay here, otherwise requests like - * get/set frequency return as failed despite actually succeeding. + /* Zoom R16/24, Logitech H650e, Jabra 550a needs a tiny delay here, + * otherwise requests like get/set frequency return as failed despite + * actually succeeding. */ - if (chip->usb_id == USB_ID(0x1686, 0x00dd) && + if ((chip->usb_id == USB_ID(0x1686, 0x00dd) || + chip->usb_id == USB_ID(0x046d, 0x0a46) || + chip->usb_id == USB_ID(0x0b0e, 0x0349)) && (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) mdelay(1); } |