Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3fb9a655 authored by Jean Delvare's avatar Jean Delvare Committed by Greg Kroah-Hartman
Browse files

[PATCH] i2c: Semaphore to mutex conversions, part 3



Cleanup after the semaphores to mutexes conversions in the i2c
subsystem.

Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 5c085d36
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -64,7 +64,6 @@
#include <linux/init.h>
#include <linux/mutex.h>
#include <asm/io.h>
#include <asm/semaphore.h>


/* ALI1535 SMBus address offsets */
+1 −1
Original line number Diff line number Diff line
@@ -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)
{
+5 −4
Original line number Diff line number Diff line
@@ -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);