[alsa-devel] [PATCH 0/6] ALSA: firewire: handle several IR/IT context in callback of the IT context
Takashi Sakamoto
o-takashi at sakamocchi.jp
Fri Oct 18 08:19:05 CEST 2019
Hi,
This patchset is a part of my continuous work to improve ALSA IEC
61883-1/6 packet streaming engine for clock-recovery, addressed in
my previous message:
https://mailman.alsa-project.org/pipermail/alsa-devel/2019-August/153388.html
For the clock-recovery, information in the sequence of tx packet from
device should be used to generate the sequence of rx packet to the
device. In current implementation of the engine, the packets are
processed in different tasklet contexts for each IR/IT context.
This is inconvenient to bypass information between these IR/IT contexts.
In this patchset, the engine is improved to process all of IR/IT
contexts in the same domain by a tasklet context for one of IT context.
For convenience, the IT context is called as 'IRQ target'. As a result,
1394 OHCI controller is managed to generate hardware IRQ just for the
IRQ target. All of rx/tx packets are processed in tasklet for the
hardware IRQ.
Takashi Sakamoto (6):
ALSA: firewire-lib: add irq_target member into amdtp_domain struct
ALSA: firewire-lib: replace pointer callback to flush isoc contexts in
AMDTP domain
ALSA: firewire-lib: replace ack callback to flush isoc contexts in
AMDTP domain
ALSA: firewire-lib: cancel flushing isoc context in the laste step to
process context callback
ALSA: firewire-lib: handle several AMDTP streams in callback handler
of IRQ target
ALSA: firewire-lib: postpone to start IR context
sound/firewire/amdtp-stream.c | 329 +++++++++++++++-----
sound/firewire/amdtp-stream.h | 17 +-
sound/firewire/bebob/bebob_pcm.c | 18 +-
sound/firewire/bebob/bebob_stream.c | 10 +-
sound/firewire/dice/dice-pcm.c | 8 +-
sound/firewire/dice/dice-stream.c | 2 +-
sound/firewire/digi00x/digi00x-pcm.c | 8 +-
sound/firewire/digi00x/digi00x-stream.c | 2 +-
sound/firewire/fireface/ff-pcm.c | 8 +-
sound/firewire/fireface/ff-stream.c | 10 +-
sound/firewire/fireworks/fireworks_pcm.c | 10 +-
sound/firewire/fireworks/fireworks_stream.c | 2 +-
sound/firewire/motu/motu-pcm.c | 8 +-
sound/firewire/motu/motu-stream.c | 2 +-
sound/firewire/oxfw/oxfw-pcm.c | 8 +-
sound/firewire/oxfw/oxfw-stream.c | 2 +-
sound/firewire/tascam/tascam-pcm.c | 8 +-
sound/firewire/tascam/tascam-stream.c | 2 +-
18 files changed, 325 insertions(+), 129 deletions(-)
--
2.20.1
More information about the Alsa-devel
mailing list