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(-) -- 2.37.2