aboutsummaryrefslogtreecommitdiffstats
path: root/sound/firewire/fireworks
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2019-06-18 22:26:21 +0900
committerTakashi Iwai <tiwai@suse.de>2019-06-21 11:47:10 +0200
commita9679dd31dd379e7e14a13c55bd0a3214c18fe47 (patch)
tree8f3eeaf92996b516c0066a67d7370cba469e8e05 /sound/firewire/fireworks
parentALSA: bebob: ensure to release isochronous resources in pcm.hw_params callback (diff)
downloadlinux-dev-a9679dd31dd379e7e14a13c55bd0a3214c18fe47.tar.xz
linux-dev-a9679dd31dd379e7e14a13c55bd0a3214c18fe47.zip
ALSA: fireworks: 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/fireworks')
-rw-r--r--sound/firewire/fireworks/fireworks_stream.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/firewire/fireworks/fireworks_stream.c b/sound/firewire/fireworks/fireworks_stream.c
index 81c1bb209a89..16cf635a6f57 100644
--- a/sound/firewire/fireworks/fireworks_stream.c
+++ b/sound/firewire/fireworks/fireworks_stream.c
@@ -217,6 +217,9 @@ int snd_efw_stream_reserve_duplex(struct snd_efw *efw, unsigned int rate)
if (rate != curr_rate) {
stop_stream(efw, &efw->tx_stream);
stop_stream(efw, &efw->rx_stream);
+
+ cmp_connection_release(&efw->out_conn);
+ cmp_connection_release(&efw->in_conn);
}
if (efw->substreams_counter == 0 || rate != curr_rate) {