mbox series

[0/3] ALSA: firewire-lib: keep history to process isochronous packet

Message ID 20230109021738.75543-1-o-takashi@sakamocchi.jp (mailing list archive)
Headers show
Series ALSA: firewire-lib: keep history to process isochronous packet | expand

Message

Takashi Sakamoto Jan. 9, 2023, 2:17 a.m. UTC
Hi,

This patchset is preparation for computation of extra delay in runtime of
PCM substream.

Current implementation uses list of packet descriptor to process
isochronous packets. The packet descriptors are overwritten every time to
process packets, while the history of packet descriptors is useful when
computing gap between current isochronous cycle and the latest isochronous
cycle in which isochronous packet is processed or scheduled.

Conveniently, circular linked list was added to Linux kernel v5.19 at a
commit 2fbdf45d7d26 ("list: Add list_next_entry_circular() and
list_prev_entry_circular()"). This patchset changes data structure from
list to the circular linked list for the packet descriptors.


Takashi Sakamoto (3):
  ALSA: firewire-lib: use circular linked list to enumerate packet
    descriptors
  ALSA: firewire-lib: use circular linked list for context payload
    processing layer
  ALSA: firewire-lib: store history to process isochronous packet

 sound/firewire/amdtp-am824.c                  | 18 +++---
 sound/firewire/amdtp-stream.c                 | 61 ++++++++++++-------
 sound/firewire/amdtp-stream.h                 | 17 +++++-
 sound/firewire/digi00x/amdtp-dot.c            | 18 +++---
 sound/firewire/fireface/amdtp-ff.c            | 18 +++---
 sound/firewire/motu/amdtp-motu.c              | 48 ++++++++-------
 .../motu/motu-command-dsp-message-parser.c    | 11 ++--
 .../motu/motu-register-dsp-message-parser.c   | 11 ++--
 sound/firewire/motu/motu.h                    |  8 +--
 sound/firewire/tascam/amdtp-tascam.c          | 18 +++---
 10 files changed, 139 insertions(+), 89 deletions(-)

Comments

Takashi Iwai Jan. 9, 2023, 4:05 p.m. UTC | #1
On Mon, 09 Jan 2023 03:17:35 +0100,
Takashi Sakamoto wrote:
> 
> Hi,
> 
> This patchset is preparation for computation of extra delay in runtime of
> PCM substream.
> 
> Current implementation uses list of packet descriptor to process
> isochronous packets. The packet descriptors are overwritten every time to
> process packets, while the history of packet descriptors is useful when
> computing gap between current isochronous cycle and the latest isochronous
> cycle in which isochronous packet is processed or scheduled.
> 
> Conveniently, circular linked list was added to Linux kernel v5.19 at a
> commit 2fbdf45d7d26 ("list: Add list_next_entry_circular() and
> list_prev_entry_circular()"). This patchset changes data structure from
> list to the circular linked list for the packet descriptors.
> 
> 
> Takashi Sakamoto (3):
>   ALSA: firewire-lib: use circular linked list to enumerate packet
>     descriptors
>   ALSA: firewire-lib: use circular linked list for context payload
>     processing layer
>   ALSA: firewire-lib: store history to process isochronous packet

Applied now to for-next branch.  Thanks.


Takashi