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

Commit 0d0ab7fe authored by Jean Delvare's avatar Jean Delvare Committed by Greg Kroah-Hartman
Browse files

[PATCH] hwmon: Inline w83792d register access functions



Inline w83792d_{read,write}_value for better performance.

Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
Acked-by: default avatarYuan Mu <Ymu@winbond.com.tw>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 806ba640
Loading
Loading
Loading
Loading
+14 −17
Original line number Diff line number Diff line
@@ -303,10 +303,6 @@ struct w83792d_data {
static int w83792d_attach_adapter(struct i2c_adapter *adapter);
static int w83792d_detect(struct i2c_adapter *adapter, int address, int kind);
static int w83792d_detach_client(struct i2c_client *client);

static int w83792d_read_value(struct i2c_client *client, u8 register);
static int w83792d_write_value(struct i2c_client *client, u8 register,
				u8 value);
static struct w83792d_data *w83792d_update_device(struct device *dev);

#ifdef DEBUG
@@ -329,6 +325,20 @@ static inline long in_count_from_reg(int nr, struct w83792d_data *data)
	return ((data->in[nr] << 2) | ((data->low_bits >> (2 * nr)) & 0x03));
}

/* The SMBus locks itself. The Winbond W83792D chip has a bank register,
   but the driver only accesses registers in bank 0, so we don't have
   to switch banks and lock access between switches. */
static inline int w83792d_read_value(struct i2c_client *client, u8 reg)
{
	return i2c_smbus_read_byte_data(client, reg);
}

static inline int
w83792d_write_value(struct i2c_client *client, u8 reg, u8 value)
{
	return i2c_smbus_write_byte_data(client, reg, value);
}

/* following are the sysfs callback functions */
static ssize_t show_in(struct device *dev, struct device_attribute *attr,
			char *buf)
@@ -1386,19 +1396,6 @@ w83792d_detach_client(struct i2c_client *client)
	return 0;
}

/* The SMBus locks itself. The Winbond W83792D chip has a bank register,
   but the driver only accesses registers in bank 0, so we don't have
   to switch banks and lock access between switches. */
static int w83792d_read_value(struct i2c_client *client, u8 reg)
{
	return i2c_smbus_read_byte_data(client, reg);
}

static int w83792d_write_value(struct i2c_client *client, u8 reg, u8 value)
{
	return i2c_smbus_write_byte_data(client, reg, value);
}

static void
w83792d_init_client(struct i2c_client *client)
{