hwmon: VRM is not written to registers
Subsystems (4)
PATCH 1/1 hwmon: VRM is not written to registers
What was true of reading the VRM value is also true of writing it: not being a register value, it doesn't need hardware access, so we don't need a reference to the i2c client. This allows for a minor code cleanup. As gcc appears to be smart enough to simplify the generated code by itself, this cleanup only affects the source code, the generated binaries are unchanged.
Signed-off-by Jean Delvare <[email protected]>
--- drivers/hwmon/adm1025.c | 3 +-- drivers/hwmon/asb100.c | 6 ++---- drivers/hwmon/lm85.c | 8 ++------ drivers/hwmon/lm87.c | 3 +-- drivers/hwmon/smsc47m192.c | 3 +-- drivers/hwmon/w83791d.c | 6 ++---- drivers/hwmon/w83793.c | 8 ++------ 7 files changed, 11 insertions(+), 26 deletions(-)
drivers/hwmon/adm1025.c +1 -2
@@ -335,8 +335,7 @@ show_vrm(struct device *dev, struct devistatic ssize_t set_vrm (struct device *dev,struct device_attribute *attr,const char *buf,size_t count) { -struct i2c_client *client =to_i2c_client (dev); -struct adm1025_data *data =i2c_get_clientdata (client); +struct adm1025_data *data =dev_get_drvdata (dev); data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/asb100.c +2 -4
@@ -520,10 +520,8 @@ static ssize_t show_vrm(struct device *dstatic ssize_t set_vrm (struct device *dev,struct device_attribute *attr,const char *buf,size_t count) { -struct i2c_client *client =to_i2c_client (dev); -struct asb100_data *data =i2c_get_clientdata (client); -unsigned long val =simple_strtoul (buf,NULL ,10 ); - data->vrm = val; +struct asb100_data *data =dev_get_drvdata (dev); + data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/lm85.c +2 -6
@@ -444,12 +444,8 @@ static ssize_t show_vrm_reg(struct devicstatic ssize_t store_vrm_reg (struct device *dev,struct device_attribute *attr,const char *buf,size_t count) { -struct i2c_client *client =to_i2c_client (dev); -struct lm85_data *data =i2c_get_clientdata (client); -u32 val; - - val =simple_strtoul (buf,NULL ,10 ); - data->vrm = val; +struct lm85_data *data =dev_get_drvdata (dev); + data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/lm87.c +1 -2
@@ -511,8 +511,7 @@ static ssize_t show_vrm(struct device *d }static ssize_t set_vrm (struct device *dev,struct device_attribute *attr,const char *buf,size_t count) { -struct i2c_client *client =to_i2c_client (dev); -struct lm87_data *data =i2c_get_clientdata (client); +struct lm87_data *data =dev_get_drvdata (dev); data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/smsc47m192.c +1 -2
@@ -341,8 +341,7 @@ static ssize_t show_vrm(struct device *dstatic ssize_t set_vrm (struct device *dev,struct device_attribute *attr,const char *buf,size_t count) { -struct i2c_client *client =to_i2c_client (dev); -struct smsc47m192_data *data =i2c_get_clientdata (client); +struct smsc47m192_data *data =dev_get_drvdata (dev); data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/w83791d.c +2 -4
@@ -840,14 +840,12 @@ static ssize_t store_vrm_reg(struct devistruct device_attribute *attr, const char *buf, size_t count) { - struct i2c_client *client = to_i2c_client(dev); -struct w83791d_data *data =i2c_get_clientdata (client); -unsigned long val =simple_strtoul (buf,NULL ,10 ); + struct w83791d_data *data = dev_get_drvdata(dev);/* No lock needed as vrm is internal to the driver (not read from a chip register) and so is not updated in w83791d_update_device() */ - data->vrm = val; + data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
drivers/hwmon/w83793.c +2 -6
@@ -243,9 +243,7 @@ static struct i2c_driver w83793_driver static ssize_t show_vrm(struct device *dev, struct device_attribute *attr, char *buf) { - struct i2c_client *client = to_i2c_client(dev); -struct w83793_data *data =i2c_get_clientdata (client); - + struct w83793_data *data = dev_get_drvdata(dev);return sprintf (buf,"%d\n" , data->vrm); }
@@ -264,9 +262,7 @@ static ssize_t store_vrm(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { - struct i2c_client *client = to_i2c_client(dev); -struct w83793_data *data =i2c_get_clientdata (client); - + struct w83793_data *data = dev_get_drvdata(dev); data->vrm =simple_strtoul (buf,NULL ,10 );return count; }
Signature · 6 lines
Jean Delvare _______________________________________________ lm-sensors mailing list [email protected] http://lists.lm-sensors.org/mailman/listinfo/lm-sensors