[alsa-devel] [PATCH 0/4] firewire-lib: purge restriction of synchronization for non-blocking mode
Takashi Sakamoto
o-takashi at sakamocchi.jp
Sat May 16 13:22:41 CEST 2015
This patchset allows non-blocking streams to use timestamp synchronization.
In full duplex synchronization mode, current implementation pass the value
of 'syt' field of CIP header in incoming packets to outgoing packet
processing, while the number of data blocks is not passed. Therefore,
this mode is allowed just to blocking streams, because of a lack of
validator for the number which actual devices transfers. As long as the
number is suspicious, it's not reused to outgoing packet processing.
To allow the synchronization mode to non-blocking streams, this patchset:
* adds a validator for the number of data blocks in incoming packets
* adds a flag still to support illegal models (i.e. Behringer FCA202)
* pass the evaluated number from incoming packet processing to outgoing
* remove the restriction
Takashi Sakamoto (4):
ALSA: firewire-lib: add buffer-over-run protection at receiving more
data blocks than expected
ALSA: firewire-lib: simplify function to calculate the number of data
blocks
ALSA: firewire-lib: pass the number of data blocks in incoming packets
to outgoing packets
ALSA: firewire-lib: remove restriction for non-blocking mode
sound/firewire/amdtp.c | 108 ++++++++++++++++++++++++--------------
sound/firewire/amdtp.h | 4 ++
sound/firewire/oxfw/oxfw-stream.c | 10 +++-
3 files changed, 81 insertions(+), 41 deletions(-)
--
2.1.4
More information about the Alsa-devel
mailing list