ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Sun, 17 Mar 2019 11:25:06 +0000 (20:25 +0900)
committerTakashi Iwai <tiwai@suse.de>
Mon, 18 Mar 2019 13:50:35 +0000 (14:50 +0100)
commitcc4f8e91c4ed04a9a972c6e10c158d4b71be3f2f
tree1244d4365cb2827544c0b08a16b002d208810eb0
parent35033d8cb71b4dd4fa8d8d28a534af1ee921b9a0
ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle

In kernel API of Linux FireWire subsystem, handlers of isochronous
receive (IR) context can get context headers as an argument of
callback. When 4 byte header is used, the context header includes
isochronous packet header for each packet. When 8 byte header is
used, it includes isochronous cycle as well.

ALSA IEC 61883-1/6 engine uses 4 byte header, and computes isochronous
cycle from the cycle of interrupt. The usage of 8 byte header can
obsolete the computation.

Furthermore, this change works well for a case that a series of
packet in one interrupt includes skipped isochronous cycle,

This commit uses 8 byte header to handle isochronous cycle.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/amdtp-stream.c