firewire: convert client_list_lock to mutex

So far it is only taken in non-atomic contexts.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/firewire/fw-device.h b/drivers/firewire/fw-device.h
index 008a790..655d7e8 100644
--- a/drivers/firewire/fw-device.h
+++ b/drivers/firewire/fw-device.h
@@ -23,7 +23,7 @@
 #include <linux/cdev.h>
 #include <linux/idr.h>
 #include <linux/rwsem.h>
-#include <linux/spinlock.h>
+#include <linux/mutex.h>
 #include <asm/atomic.h>
 
 enum fw_device_state {
@@ -65,9 +65,10 @@
 	bool cmc;
 	struct fw_card *card;
 	struct device device;
-	/* to prevent deadlocks, never take this lock with card->lock held */
-	spinlock_t client_list_lock;
+
+	struct mutex client_list_mutex;
 	struct list_head client_list;
+
 	u32 *config_rom;
 	size_t config_rom_length;
 	int config_rom_retries;