diff options
author | John Ernberg <john.ernberg@actia.se> | 2021-03-03 18:14:39 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-03-17 16:43:47 +0100 |
commit | 8e051ec2af280a07f3e9eeec7df0bbaa08208767 (patch) | |
tree | d5d5e518f1f506bb3123135668a5d17ada78d704 /sound/usb | |
parent | 14e4d57cbafe0927a080bd6b635e997ab347aa07 (diff) |
ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk
commit fc7c5c208eb7bc2df3a9f4234f14eca250001cb6 upstream.
The microphone in the Plantronics C320-M headset will randomly
fail to initialize properly, at least when using Microsoft Teams.
Introducing a 20ms delay on the control messages appears to
resolve the issue.
Link: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1065
Tested-by: Andreas Kempe <kempe@lysator.liu.se>
Signed-off-by: John Ernberg <john.ernberg@actia.se>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20210303181405.39835-1-john.ernberg@actia.se
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/quirks.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index d52ab6d49d18..7859fbd42d6f 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -1338,6 +1338,14 @@ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe, && (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) msleep(20); + /* + * Plantronics C320-M needs a delay to avoid random + * microhpone failures. + */ + if (chip->usb_id == USB_ID(0x047f, 0xc025) && + (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) + msleep(20); + /* Zoom R16/24, many Logitech(at least H650e/H570e/BCC950), * Jabra 550a, Kingston HyperX needs a tiny delay here, * otherwise requests like get/set frequency return |