1
0
Fork 0
alistair23-linux/sound/firewire/bebob
Takashi Sakamoto 86b2eb94b0 ALSA: bebob: expand sleep just after breaking connections for protocol version 1
[ Upstream commit d3eabe939a ]

As long as I investigated, some devices with BeBoB protocol version 1
can be freezed during several hundreds milliseconds after breaking
connections. When accessing during the freezed time, any transaction
is corrupted. In the worst case, the device is going to reboot.

I can see this issue in:
 * Roland FA-66
 * M-Audio FireWire Solo

This commit expands sleep just after breaking connections to avoid
the freezed time as much as possible. I note that the freeze/reboot
behaviour is similar to below models:
 * Focusrite Saffire Pro 10 I/O
 * Focusrite Saffire Pro 26 I/O

The above models certainly reboot after breaking connections.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://lore.kernel.org/r/20191101131323.17300-2-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-31 16:44:32 +01:00
..
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bebob.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob.h ALSA: bebob: support AMDTP domain 2019-08-05 19:57:23 +02:00
bebob_command.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob_focusrite.c ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series 2019-11-04 09:03:06 +01:00
bebob_hwdep.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob_maudio.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob_midi.c ASoC: Updates for v5.3 2019-07-08 14:45:34 +02:00
bebob_pcm.c ASoC: Updates for v5.3 2019-07-08 14:45:34 +02:00
bebob_proc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob_stream.c ALSA: bebob: expand sleep just after breaking connections for protocol version 1 2019-12-31 16:44:32 +01:00
bebob_terratec.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
bebob_yamaha_terratec.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00