ALSA: firewire-lib: add a restriction for a transaction at once
Currently, when waiting for a response, callers can start another
transaction by scheduling another work. This is not good for error
processing of transaction, especially the first response is too late.
This commit serialize request/response transactions, by adding one
boolean member to represent idling state.
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
diff --git a/sound/firewire/lib.h b/sound/firewire/lib.h
index 37a7fe4..0af06f4 100644
--- a/sound/firewire/lib.h
+++ b/sound/firewire/lib.h
@@ -30,6 +30,7 @@
struct snd_fw_async_midi_port {
struct fw_device *parent;
struct work_struct work;
+ bool idling;
u64 addr;
struct fw_transaction transaction;