aboutsummaryrefslogtreecommitdiffstats
path: root/sound/firewire
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2019-06-18 22:26:22 +0900
committerTakashi Iwai <tiwai@suse.de>2019-06-21 11:47:11 +0200
commit3f2ce83ddba936568de2d057bbd29d74cd2de80d (patch)
treec0648ee11db65bb17d5e43f4c87736bfd294c1f3 /sound/firewire
parentALSA: fireworks: ensure to release isochronous resources in pcm.hw_params callback (diff)
downloadlinux-dev-3f2ce83ddba936568de2d057bbd29d74cd2de80d.tar.xz
linux-dev-3f2ce83ddba936568de2d057bbd29d74cd2de80d.zip
ALSA: oxfw: ensure to release isochronous resources in pcm.hw_params callback
When stopping packet streaming in reserve function for duplex streams, isochronous resources should be released. Fixes: 7bc93821a70a ("ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection") Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire')
-rw-r--r--sound/firewire/oxfw/oxfw-stream.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/firewire/oxfw/oxfw-stream.c b/sound/firewire/oxfw/oxfw-stream.c
index a8bc798731ff..a7502810a3ad 100644
--- a/sound/firewire/oxfw/oxfw-stream.c
+++ b/sound/firewire/oxfw/oxfw-stream.c
@@ -283,10 +283,12 @@ int snd_oxfw_stream_reserve_duplex(struct snd_oxfw *oxfw,
if (formation.rate != rate || formation.pcm != pcm_channels) {
amdtp_stream_stop(&oxfw->rx_stream);
cmp_connection_break(&oxfw->in_conn);
+ cmp_connection_release(&oxfw->in_conn);
if (oxfw->has_output) {
amdtp_stream_stop(&oxfw->tx_stream);
cmp_connection_break(&oxfw->out_conn);
+ cmp_connection_release(&oxfw->out_conn);
}
}