ALSA: dice: Support for non SYT-Match sampling clock source mode
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Mon, 8 Dec 2014 15:10:37 +0000 (00:10 +0900)
committerTakashi Iwai <tiwai@suse.de>
Wed, 10 Dec 2014 09:45:28 +0000 (10:45 +0100)
commit8fc01fc0674e3ea7fdd13bd3d138793619227f89
tree2098bbdcc0248276ca589c35bd2f8bd1aa929a48
parent9a02843caefbc370ef6d5895881101f9436f98da
ALSA: dice: Support for non SYT-Match sampling clock source mode

This commit allows this driver to handle devices with non SYT-Match
sampling clock source.

When sampling clock source is SYT-Match mode, devices handle
'presentation timestamp' in received packets and generates sampling clock
according to the information. In this case, driver is synchronization master
and must transfer correct value in SYT field of each packets in outgoing
stream, then the outgoing stream is a master stream.

On the other hand, non SYT-Match mode, devices do this. So drivers must pick
up the value in SYT field of incoming packets and use the value for outgoing
stream. Currently firewire-lib module achieve this work.

Furthermore, without SYT-Match and internal clock source, the sampling rate
should be fixed for the other devices connected to the handled device. This
commit add a restriction of sampling rate at this situation.

With these implementations, this driver has no need to set clock source.
This commit remove set function.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Acked-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/dice/dice-pcm.c
sound/firewire/dice/dice-stream.c
sound/firewire/dice/dice-transaction.c
sound/firewire/dice/dice.h