Commit 71062ffcd5173b8291ee80e84711b619b34a64eb

Authored by Jean Delvare
Committed by Mark M. Hoffman
1 parent 6cb59e915d

hwmon: (max1619) Add individual alarm and fault files

The new libsensors needs these individual alarm and fault files.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Juerg Haefliger <juergh at gmail.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>

Showing 1 changed file with 17 additions and 0 deletions Side-by-side Diff

drivers/hwmon/max1619.c
... ... @@ -32,6 +32,7 @@
32 32 #include <linux/jiffies.h>
33 33 #include <linux/i2c.h>
34 34 #include <linux/hwmon.h>
  35 +#include <linux/hwmon-sysfs.h>
35 36 #include <linux/err.h>
36 37 #include <linux/mutex.h>
37 38 #include <linux/sysfs.h>
... ... @@ -161,6 +162,14 @@
161 162 return sprintf(buf, "%d\n", data->alarms);
162 163 }
163 164  
  165 +static ssize_t show_alarm(struct device *dev, struct device_attribute *attr,
  166 + char *buf)
  167 +{
  168 + int bitnr = to_sensor_dev_attr(attr)->index;
  169 + struct max1619_data *data = max1619_update_device(dev);
  170 + return sprintf(buf, "%d\n", (data->alarms >> bitnr) & 1);
  171 +}
  172 +
164 173 static DEVICE_ATTR(temp1_input, S_IRUGO, show_temp_input1, NULL);
165 174 static DEVICE_ATTR(temp2_input, S_IRUGO, show_temp_input2, NULL);
166 175 static DEVICE_ATTR(temp2_min, S_IWUSR | S_IRUGO, show_temp_low2,
... ... @@ -172,6 +181,10 @@
172 181 static DEVICE_ATTR(temp2_crit_hyst, S_IWUSR | S_IRUGO, show_temp_hyst2,
173 182 set_temp_hyst2);
174 183 static DEVICE_ATTR(alarms, S_IRUGO, show_alarms, NULL);
  184 +static SENSOR_DEVICE_ATTR(temp2_crit_alarm, S_IRUGO, show_alarm, NULL, 1);
  185 +static SENSOR_DEVICE_ATTR(temp2_fault, S_IRUGO, show_alarm, NULL, 2);
  186 +static SENSOR_DEVICE_ATTR(temp2_min_alarm, S_IRUGO, show_alarm, NULL, 3);
  187 +static SENSOR_DEVICE_ATTR(temp2_max_alarm, S_IRUGO, show_alarm, NULL, 4);
175 188  
176 189 static struct attribute *max1619_attributes[] = {
177 190 &dev_attr_temp1_input.attr,
... ... @@ -182,6 +195,10 @@
182 195 &dev_attr_temp2_crit_hyst.attr,
183 196  
184 197 &dev_attr_alarms.attr,
  198 + &sensor_dev_attr_temp2_crit_alarm.dev_attr.attr,
  199 + &sensor_dev_attr_temp2_fault.dev_attr.attr,
  200 + &sensor_dev_attr_temp2_min_alarm.dev_attr.attr,
  201 + &sensor_dev_attr_temp2_max_alarm.dev_attr.attr,
185 202 NULL
186 203 };
187 204