Browse Source

hwmon: (adt7473) Initialize max_duty_at_overheat before use

data->max_duty_at_overheat is not updated in adt7473_update_device,
so it might be used before it is initialized (if the user reads from
sysfs file max_duty_at_crit before writing to it.)

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
Jean Delvare 17 years ago
parent
commit
ed4ec814e4
1 changed files with 3 additions and 0 deletions
  1. 3 0
      drivers/hwmon/adt7473.c

+ 3 - 0
drivers/hwmon/adt7473.c

@@ -309,6 +309,9 @@ no_sensor_update:
 						ADT7473_REG_PWM_BHVR(i));
 						ADT7473_REG_PWM_BHVR(i));
 	}
 	}
 
 
+	i = i2c_smbus_read_byte_data(client, ADT7473_REG_CFG4);
+	data->max_duty_at_overheat = !!(i & ADT7473_CFG4_MAX_DUTY_AT_OVT);
+
 	data->limits_last_updated = local_jiffies;
 	data->limits_last_updated = local_jiffies;
 	data->limits_valid = 1;
 	data->limits_valid = 1;