[PATCH] i2c: Semaphore to mutex conversions, part 3
authorJean Delvare <khali@linux-fr.org>
Wed, 18 Jan 2006 22:17:01 +0000 (23:17 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 23 Mar 2006 22:21:51 +0000 (14:21 -0800)
Cleanup after the semaphores to mutexes conversions in the i2c
subsystem.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/i2c/busses/i2c-ali1535.c
drivers/i2c/busses/i2c-pxa.c
drivers/i2c/busses/scx200_acb.c

index 26cf891762b89f8fb5f1c4648b5ac988b99bce32..115a7312948e7d7f9168914fda6b2c8bb9dab342 100644 (file)
@@ -64,7 +64,6 @@
 #include <linux/init.h>
 #include <linux/mutex.h>
 #include <asm/io.h>
-#include <asm/semaphore.h>
 
 
 /* ALI1535 SMBus address offsets */
index 7579f4b256a8c7ed716765adcafb59c7fdb6cfb9..5155010b455e7eb9a094ed520d5bf4fbb25a9ae7 100644 (file)
@@ -647,7 +647,7 @@ static inline void i2c_pxa_start_message(struct pxa_i2c *i2c)
 }
 
 /*
- * We are protected by the adapter bus semaphore.
+ * We are protected by the adapter bus mutex.
  */
 static int i2c_pxa_do_xfer(struct pxa_i2c *i2c, struct i2c_msg *msg, int num)
 {
index 8e646bdb556c8d52b2fb4852a57f94e5cbb4d4af..8bd305e47f0d1d87ce5718a04a6812865b6841a0 100644 (file)
@@ -31,6 +31,7 @@
 #include <linux/smp_lock.h>
 #include <linux/pci.h>
 #include <linux/delay.h>
+#include <linux/mutex.h>
 #include <asm/io.h>
 #include <asm/msr.h>
 
@@ -74,7 +75,7 @@ struct scx200_acb_iface {
        struct scx200_acb_iface *next;
        struct i2c_adapter adapter;
        unsigned base;
-       struct semaphore sem;
+       struct mutex mutex;
 
        /* State machine data */
        enum scx200_acb_state state;
@@ -314,7 +315,7 @@ static s32 scx200_acb_smbus_xfer(struct i2c_adapter *adapter,
                return -EINVAL;
        }
 
-       down(&iface->sem);
+       mutex_lock(&iface->mutex);
 
        iface->address_byte = (address << 1) | rw;
        iface->command = command;
@@ -338,7 +339,7 @@ static s32 scx200_acb_smbus_xfer(struct i2c_adapter *adapter,
 
        rc = iface->result;
 
-       up(&iface->sem);
+       mutex_unlock(&iface->mutex);
 
        if (rc == 0 && size == I2C_SMBUS_WORD_DATA && rw == I2C_SMBUS_READ)
                data->word = le16_to_cpu(cur_word);
@@ -431,7 +432,7 @@ static int  __init scx200_acb_create(const char *text, int base, int index)
        adapter->algo = &scx200_acb_algorithm;
        adapter->class = I2C_CLASS_HWMON;
 
-       init_MUTEX(&iface->sem);
+       mutex_init(&iface->mutex);
 
        snprintf(description, sizeof(description), "%s ACCESS.bus [%s]",
                 text, adapter->name);