linux_dsm_epyc7002/sound/firewire
Takashi Sakamoto 8edc56ec8f ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks
Once allocated, isochronous resources are available for packet
streaming, even if the streaming is cancelled. For this reason,
current implementation handles allocation of the resources and
starting packet streaming at the same time. However, this brings
complicated procedure to start packet streaming.

This commit separates the allocation and starting. The allocation is
done in pcm.hw_params callback and available till pcm.hw_free callback.
Even if any XRUN occurs, pcm.prepare callback is done to restart
packet streaming without releasing/allocating the resources.

There are two points to stop packet streaming; in pcm.hw_params and
pcm.prepare callbacks. The former point is a case that packet streaming
is already started for any MIDI substream then packet streaming is
requested with different sampling transfer frequency for any PCM
substream. The latter point is cases of any XRUN or packet queueing
error.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2019-06-18 08:45:31 +02:00
..
bebob ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
dice ALSA: dice: fix compiler warning due to returning uninitialized value 2019-06-13 06:59:09 +02:00
digi00x ALSA: firewire-digi00x: code refactoring for pcm.hw_params/hw_free callbacks 2019-06-11 16:02:07 +02:00
fireface ALSA: fireface: code refactoring for pcm.hw_params/hw_free callbacks 2019-06-11 11:36:27 +02:00
fireworks ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
motu ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks 2019-06-18 08:45:31 +02:00
oxfw ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
tascam ALSA: firewire-tascam: code refactoring for pcm.hw_params/hw_free callbacks 2019-06-11 11:36:21 +02:00
amdtp-am824.c ALSA: firewire-lib: use union for directional parameters 2019-05-22 12:28:00 +02:00
amdtp-am824.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
amdtp-stream-trace.h ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events 2019-05-24 11:18:01 +02:00
amdtp-stream.c ALSA: firewire-lib: refactoring to obsolete IR packet handler 2019-05-24 11:18:03 +02:00
amdtp-stream.h ALSA: firewire-lib: unify packet handler for IT context 2019-05-24 09:05:15 +02:00
cmp.c ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
cmp.h ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
fcp.c ALSA: firewire-lib/bebob/oxfw: improve response evaluation for AV/C commands 2017-04-05 21:37:23 +02:00
fcp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
isight.c ALSA: isight: fix leak of reference to firewire unit in error path of .probe callback 2018-10-12 08:08:04 +02:00
iso-resources.c ALSA: firewire: fix NULL pointer dereference when releasing uninitialized data of iso-resource 2017-08-20 09:40:32 +02:00
iso-resources.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Kconfig ALSA: fireface: add support for Fireface UCX 2019-01-21 15:12:25 +01:00
lib.c ALSA: firewire-lib/firewire-tascam: localize async midi port 2017-04-14 14:50:26 +02:00
lib.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +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
packets-buffer.c treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
packets-buffer.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00