diff options
Diffstat (limited to 'drivers/hwmon')
-rw-r--r-- | drivers/hwmon/w83795.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/drivers/hwmon/w83795.c b/drivers/hwmon/w83795.c index fd96e72adde0..95b1f860c14e 100644 --- a/drivers/hwmon/w83795.c +++ b/drivers/hwmon/w83795.c | |||
@@ -916,6 +916,21 @@ store_pwm_enable(struct device *dev, struct device_attribute *attr, | |||
916 | } | 916 | } |
917 | 917 | ||
918 | static ssize_t | 918 | static ssize_t |
919 | show_pwm_mode(struct device *dev, struct device_attribute *attr, char *buf) | ||
920 | { | ||
921 | struct w83795_data *data = w83795_update_pwm_config(dev); | ||
922 | int index = to_sensor_dev_attr_2(attr)->index; | ||
923 | unsigned int mode; | ||
924 | |||
925 | if (data->pwm_fomc & (1 << index)) | ||
926 | mode = 0; /* DC */ | ||
927 | else | ||
928 | mode = 1; /* PWM */ | ||
929 | |||
930 | return sprintf(buf, "%u\n", mode); | ||
931 | } | ||
932 | |||
933 | static ssize_t | ||
919 | show_temp_src(struct device *dev, struct device_attribute *attr, char *buf) | 934 | show_temp_src(struct device *dev, struct device_attribute *attr, char *buf) |
920 | { | 935 | { |
921 | struct sensor_device_attribute_2 *sensor_attr = | 936 | struct sensor_device_attribute_2 *sensor_attr = |
@@ -1551,6 +1566,8 @@ store_sf_setup(struct device *dev, struct device_attribute *attr, | |||
1551 | show_pwm, store_pwm, PWM_FREQ, index - 1), \ | 1566 | show_pwm, store_pwm, PWM_FREQ, index - 1), \ |
1552 | SENSOR_ATTR_2(pwm##index##_enable, S_IWUSR | S_IRUGO, \ | 1567 | SENSOR_ATTR_2(pwm##index##_enable, S_IWUSR | S_IRUGO, \ |
1553 | show_pwm_enable, store_pwm_enable, NOT_USED, index - 1), \ | 1568 | show_pwm_enable, store_pwm_enable, NOT_USED, index - 1), \ |
1569 | SENSOR_ATTR_2(pwm##index##_mode, S_IRUGO, \ | ||
1570 | show_pwm_mode, NULL, NOT_USED, index - 1), \ | ||
1554 | SENSOR_ATTR_2(fan##index##_target, S_IWUSR | S_IRUGO, \ | 1571 | SENSOR_ATTR_2(fan##index##_target, S_IWUSR | S_IRUGO, \ |
1555 | show_fanin, store_fanin, FANIN_TARGET, index - 1) } | 1572 | show_fanin, store_fanin, FANIN_TARGET, index - 1) } |
1556 | 1573 | ||
@@ -1698,7 +1715,7 @@ static const struct sensor_device_attribute_2 w83795_dts[][8] = { | |||
1698 | SENSOR_ATTR_DTS(14), | 1715 | SENSOR_ATTR_DTS(14), |
1699 | }; | 1716 | }; |
1700 | 1717 | ||
1701 | static const struct sensor_device_attribute_2 w83795_pwm[][7] = { | 1718 | static const struct sensor_device_attribute_2 w83795_pwm[][8] = { |
1702 | SENSOR_ATTR_PWM(1), | 1719 | SENSOR_ATTR_PWM(1), |
1703 | SENSOR_ATTR_PWM(2), | 1720 | SENSOR_ATTR_PWM(2), |
1704 | SENSOR_ATTR_PWM(3), | 1721 | SENSOR_ATTR_PWM(3), |