ALSA: firewire-lib: change waking up timing to process packets
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Thu, 20 May 2021 04:01:54 +0000 (13:01 +0900)
committerTakashi Iwai <tiwai@suse.de>
Thu, 20 May 2021 12:01:17 +0000 (14:01 +0200)
commitbdaedca74d6293b6ac643a8ebe8231b52bf1171b
tree3d7d64b6ed2b6111aec0f12f289e702d18e320ae
parent9b1fcd9bf802062c1b6c325b7762f4ecdc59f309
ALSA: firewire-lib: change waking up timing to process packets

When starting AMDTP domain, tasks in process context yields running CPU
till all of isochronous context get callback, with an assumption that
it's OK to process content of packet.

However several isochronous cycles are skipped to transfer rx packets, or
the content of rx packets are dropped, to manage the timing to start
processing the packets.

This commit changes the timing for tasks in process context to wake up
when processing content of packet is actually ready.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://lore.kernel.org/r/20210520040154.80450-9-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/amdtp-stream.c
sound/firewire/amdtp-stream.h
sound/firewire/bebob/bebob_stream.c
sound/firewire/dice/dice-stream.c
sound/firewire/digi00x/digi00x-stream.c
sound/firewire/fireface/ff-stream.c
sound/firewire/fireworks/fireworks_stream.c
sound/firewire/motu/motu-stream.c
sound/firewire/oxfw/oxfw-stream.c
sound/firewire/tascam/tascam-stream.c