]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: firewire-tascam: add data block processing layer
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Thu, 1 Oct 2015 13:02:14 +0000 (22:02 +0900)
committerTakashi Iwai <tiwai@suse.de>
Fri, 2 Oct 2015 16:17:01 +0000 (18:17 +0200)
commitdf3f92e57497334043e9c7ded3f7642f9fc0ba2f
tree84cb01821612f287ecf3471caf15abb0f08d844d
parente0aa58fdc10ab7cdb10f0e3b8878f420e4a8694d
ALSA: firewire-tascam: add data block processing layer

TASCAM FireWire series uses non-blocking transmission for AMDTP packet
streaming, while the format of data blocks is unique.

The CIP headers includes specific value in FMT field and no SYT
information.

In transmitted packets, the first data channel represents event counter,
and the last data channel has status and control information. The rest
has 24bit PCM samples with right padding.

In received packets, all of data channels include 16, 24, 32bit PCM
samples. There's no other kind of information.

This commit adds support for this protocol. For convenience, the size of
PCM samples in outgoing packet is limited by 16 and 24bit. The status and
control information will be supported in future commits.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/tascam/Makefile
sound/firewire/tascam/amdtp-tascam.c [new file with mode: 0644]
sound/firewire/tascam/tascam.h