summaryrefslogtreecommitdiffstats
path: root/sound/firewire/motu
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2018-06-18 14:07:54 +0200
committerTakashi Iwai <tiwai@suse.de>2018-06-19 20:44:52 +0200
commit191ef57683aab1939d9b7afdc43f9213c21c5e1e (patch)
treeb3213f003d963ddc4aec2e21d7d101e512bbbc9d /sound/firewire/motu
parentALSA: firewire-motu: add a flag for AES/EBU on XLR interface (diff)
downloadlinux-191ef57683aab1939d9b7afdc43f9213c21c5e1e.tar.xz
linux-191ef57683aab1939d9b7afdc43f9213c21c5e1e.zip
ALSA: firewire-motu: cancel chunk alignment for protocol version 2
For MOTU protocol version 2, this driver arranges the number of data chunks to align chunks to quadlet data channel. However, MOTU Traveler has padding bytes in the end of data block at high clock mode. This commit removes the arrangement. Fortunately, at low and middle clock mode, supported model for v2 protocol (828mkII) gets no influence from this change because all of combination for data chunks are just aligned to quadlet data channel. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire/motu')
-rw-r--r--sound/firewire/motu/motu-protocol-v2.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/sound/firewire/motu/motu-protocol-v2.c b/sound/firewire/motu/motu-protocol-v2.c
index f25b1ba118a2..e5bd3ac02300 100644
--- a/sound/firewire/motu/motu-protocol-v2.c
+++ b/sound/firewire/motu/motu-protocol-v2.c
@@ -173,12 +173,9 @@ static void calculate_fixed_part(struct snd_motu_packet_format *formats,
pcm_chunks[0] += 2;
pcm_chunks[1] += 2;
- /* This part should be multiples of 4. */
- formats->fixed_part_pcm_chunks[0] = round_up(2 + pcm_chunks[0], 4) - 2;
- formats->fixed_part_pcm_chunks[1] = round_up(2 + pcm_chunks[1], 4) - 2;
- if (flags & SND_MOTU_SPEC_SUPPORT_CLOCK_X4)
- formats->fixed_part_pcm_chunks[2] =
- round_up(2 + pcm_chunks[2], 4) - 2;
+ formats->fixed_part_pcm_chunks[0] = pcm_chunks[0];
+ formats->fixed_part_pcm_chunks[1] = pcm_chunks[1];
+ formats->fixed_part_pcm_chunks[2] = pcm_chunks[2];
}
static void calculate_differed_part(struct snd_motu_packet_format *formats,