summaryrefslogtreecommitdiff
path: root/sound/firewire/oxfw
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2019-06-12 11:44:17 +0300
committerTakashi Iwai <tiwai@suse.de>2019-06-12 16:26:56 +0300
commit7efa19ab4848305a17aea542b09930e3d7d1bede (patch)
tree00e53c7680ad06156c587a37db9b807d6e195eb7 /sound/firewire/oxfw
parent20358d4460bd4aa833b1ad79b79763887d9b75e4 (diff)
downloadlinux-7efa19ab4848305a17aea542b09930e3d7d1bede.tar.xz
ALSA: oxfw: break packet streaming at bus-reset handler
In most cases, recovery from bus reset is not successful. This commit aborts packet streaming in bus reset handler. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire/oxfw')
-rw-r--r--sound/firewire/oxfw/oxfw-stream.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/sound/firewire/oxfw/oxfw-stream.c b/sound/firewire/oxfw/oxfw-stream.c
index bb4ba6c196ea..806a7fded99d 100644
--- a/sound/firewire/oxfw/oxfw-stream.c
+++ b/sound/firewire/oxfw/oxfw-stream.c
@@ -363,17 +363,10 @@ void snd_oxfw_stream_destroy_simplex(struct snd_oxfw *oxfw,
void snd_oxfw_stream_update_simplex(struct snd_oxfw *oxfw,
struct amdtp_stream *stream)
{
- struct cmp_connection *conn;
-
- if (stream == &oxfw->tx_stream)
- conn = &oxfw->out_conn;
- else
- conn = &oxfw->in_conn;
+ stop_stream(oxfw, &oxfw->rx_stream);
- if (cmp_connection_update(conn) < 0)
- stop_stream(oxfw, stream);
- else
- amdtp_stream_update(stream);
+ if (oxfw->has_output)
+ stop_stream(oxfw, &oxfw->tx_stream);
}
int snd_oxfw_stream_get_current_formation(struct snd_oxfw *oxfw,