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>
Esse commit está contido em:
Takashi Sakamoto
2014-12-09 00:10:37 +09:00
commit de Takashi Iwai
commit 8fc01fc067
4 arquivos alterados com 58 adições e 19 exclusões

Ver arquivo

@@ -137,11 +137,6 @@ int snd_dice_transaction_get_clock_source(struct snd_dice *dice,
return err;
}
int snd_dice_transaction_set_clock_source(struct snd_dice *dice,
unsigned int source)
{
return set_clock_info(dice, UINT_MAX, source);
}
int snd_dice_transaction_get_rate(struct snd_dice *dice, unsigned int *rate)
{