Commit c3b327d6 authored by Guillem Jover's avatar Guillem Jover Committed by Jean Delvare

hwmon: (f75375s) Do not overwrite values read from registers

All bits in the values read from registers to be used for the next
write were getting overwritten, avoid doing so to not mess with the
current configuration.
Signed-off-by: default avatarGuillem Jover <guillem@hadrons.org>
Cc: Riku Voipio <riku.voipio@iki.fi>
Cc: stable@kernel.org
Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
parent 96f36408
...@@ -298,7 +298,7 @@ static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val) ...@@ -298,7 +298,7 @@ static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val)
return -EINVAL; return -EINVAL;
fanmode = f75375_read8(client, F75375_REG_FAN_TIMER); fanmode = f75375_read8(client, F75375_REG_FAN_TIMER);
fanmode = ~(3 << FAN_CTRL_MODE(nr)); fanmode &= ~(3 << FAN_CTRL_MODE(nr));
switch (val) { switch (val) {
case 0: /* Full speed */ case 0: /* Full speed */
...@@ -350,7 +350,7 @@ static ssize_t set_pwm_mode(struct device *dev, struct device_attribute *attr, ...@@ -350,7 +350,7 @@ static ssize_t set_pwm_mode(struct device *dev, struct device_attribute *attr,
mutex_lock(&data->update_lock); mutex_lock(&data->update_lock);
conf = f75375_read8(client, F75375_REG_CONFIG1); conf = f75375_read8(client, F75375_REG_CONFIG1);
conf = ~(1 << FAN_CTRL_LINEAR(nr)); conf &= ~(1 << FAN_CTRL_LINEAR(nr));
if (val == 0) if (val == 0)
conf |= (1 << FAN_CTRL_LINEAR(nr)) ; conf |= (1 << FAN_CTRL_LINEAR(nr)) ;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment