Skip to content

Commit

Permalink
hwmon: (nct6775) Drop read/write lock
Browse files Browse the repository at this point in the history
The read/write lock is acquired for each read/write operation from/to the chip.
This occurs either during initialization, when it is not needed, or during
updates, when the update_lock is held as well, and it is not needed either.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
  • Loading branch information
Guenter Roeck committed Apr 8, 2013
1 parent 0fc1f8f commit 236d903
Showing 1 changed file with 0 additions and 10 deletions.
10 changes: 0 additions & 10 deletions drivers/hwmon/nct6775.c
Original file line number Diff line number Diff line change
Expand Up @@ -554,7 +554,6 @@ struct nct6775_data {
const char *name;

struct device *hwmon_dev;
struct mutex lock;

u16 reg_temp[4][NUM_TEMP]; /* 0=temp, 1=temp_over, 2=temp_hyst,
* 3=temp_crit
Expand Down Expand Up @@ -745,8 +744,6 @@ static u16 nct6775_read_value(struct nct6775_data *data, u16 reg)
{
int res, word_sized = is_word_sized(data, reg);

mutex_lock(&data->lock);

nct6775_set_bank(data, reg);
outb_p(reg & 0xff, data->addr + ADDR_REG_OFFSET);
res = inb_p(data->addr + DATA_REG_OFFSET);
Expand All @@ -755,17 +752,13 @@ static u16 nct6775_read_value(struct nct6775_data *data, u16 reg)
data->addr + ADDR_REG_OFFSET);
res = (res << 8) + inb_p(data->addr + DATA_REG_OFFSET);
}

mutex_unlock(&data->lock);
return res;
}

static int nct6775_write_value(struct nct6775_data *data, u16 reg, u16 value)
{
int word_sized = is_word_sized(data, reg);

mutex_lock(&data->lock);

nct6775_set_bank(data, reg);
outb_p(reg & 0xff, data->addr + ADDR_REG_OFFSET);
if (word_sized) {
Expand All @@ -774,8 +767,6 @@ static int nct6775_write_value(struct nct6775_data *data, u16 reg, u16 value)
data->addr + ADDR_REG_OFFSET);
}
outb_p(value & 0xff, data->addr + DATA_REG_OFFSET);

mutex_unlock(&data->lock);
return 0;
}

Expand Down Expand Up @@ -3416,7 +3407,6 @@ static int nct6775_probe(struct platform_device *pdev)

data->kind = sio_data->kind;
data->addr = res->start;
mutex_init(&data->lock);
mutex_init(&data->update_lock);
data->name = nct6775_device_names[data->kind];
data->bank = 0xff; /* Force initial bank selection */
Expand Down

0 comments on commit 236d903

Please sign in to comment.