Commit 71062ffcd5173b8291ee80e84711b619b34a64eb
Committed by
Mark M. Hoffman
1 parent
6cb59e915d
Exists in
master
and in
7 other branches
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 |