ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen
authorAlexander Tsoy <alexander@tsoy.me>
Tue, 21 Apr 2020 19:09:08 +0000 (22:09 +0300)
committerTakashi Iwai <tiwai@suse.de>
Tue, 21 Apr 2020 19:30:28 +0000 (21:30 +0200)
commitcf9fb7b8737694818e783fc61e8fe220b7eaaf60
tree4526ab3f05ab536e6fcbbb3ebc95b84cdcad254f
parent7686e3485253635c529cdd5f416fc640abaf076f
ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen

Due to rounding error driver sometimes incorrectly calculate next packet
size, which results in audible clicks on devices with synchronous playback
endpoints. For example on a high speed bus and a sample rate 44.1 kHz it
loses one sample every ~40.9 seconds. Fortunately playback interface on
Scarlett 2i4 2nd gen has a working explicit feedback endpoint, so we can
switch playback data endpoint to asynchronous mode as a workaround.

Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Link: https://lore.kernel.org/r/20200421190908.462860-1-alexander@tsoy.me
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/quirks.c