]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: usb-audio: Apply implicit feedback mode for BOSS devices
authorTakashi Iwai <tiwai@suse.de>
Wed, 14 Apr 2021 08:32:55 +0000 (10:32 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 14 Apr 2021 12:24:22 +0000 (14:24 +0200)
commit5fe7dfbacc8504ca09d05208b884c7fbc6b4c3aa
tree6bc1eb3e80c598688df4c4a3d7610fcb267ed578
parenta6e4c68e9a717f7de645fe6d0c76afaf03f98b1b
ALSA: usb-audio: Apply implicit feedback mode for BOSS devices

During the recent rewrite of the implicit feedback support, we've
tested to apply the implicit fb on BOSS devices, but it failed, as the
capture stream didn't start without the playback.  As the end result,
it got another type of quirk for tying both streams but starts
playback always (commit f12aea40a6cf "ALSA: usb-audio: Quirk for BOSS
GT-001").

Meanwhile, Mike Oliphant has tested the real implicit feedback mode
for the playback again with the latest code, and found out that it
actually works if the initial feedback sync is skipped; that is, on
those BOSS devices, the playback stream has to be started at first
without waiting for the capture URB completions.  Otherwise it gets
stuck.  In the rest operations after the capture stream processed, we
can take them as the implicit feedback source.

This patch is an attempt to improve the support for BOSS devices with
the implicit feedback mode in the way described above.  It adds a new
flag to snd_usb_audio, playback_first, indicating that the playback
stream starts without sync with the initial capture completion.  This
flag is set in the quirk table with the new IMPLICIT_FB_BOTH type.

Reported-and-tested-by: Mike Oliphant <oliphant@nostatic.org>
Link: https://lore.kernel.org/r/20210414083255.9527-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/endpoint.c
sound/usb/implicit.c
sound/usb/usbaudio.h