diff options
| -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 fd96e72adde..95b1f860c14 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), |
