[alsa-devel] [PATCH 0/6] ALSA: firewire: handle several IR/IT context in callback of the IT context
Takashi Iwai
tiwai at suse.de
Sat Oct 19 09:22:16 CEST 2019
On Fri, 18 Oct 2019 08:19:05 +0200,
Takashi Sakamoto wrote:
>
> 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
Applied all patches now.
Although the preempt handling in AMDTP looks a bit suspicious, it
should be OK as long as the code has been tested, so I took as is.
thanks,
Takashi
More information about the Alsa-devel
mailing list