Lines Matching +full:attr +full:- +full:max +full:- +full:name
1 // SPDX-License-Identifier: GPL-2.0-or-later
16 #include <linux/hwmon-sysfs.h>
59 if (time_after(jiffies, drv_data->last_update + HZ) in menf21bmc_hwmon_update()
60 || !drv_data->valid) { in menf21bmc_hwmon_update()
62 val = i2c_smbus_read_word_data(drv_data->i2c_client, in menf21bmc_hwmon_update()
68 drv_data->in_val[i] = val; in menf21bmc_hwmon_update()
70 drv_data->last_update = jiffies; in menf21bmc_hwmon_update()
71 drv_data->valid = true; in menf21bmc_hwmon_update()
82 val = i2c_smbus_read_word_data(drv_data->i2c_client, in menf21bmc_hwmon_get_volt_limits()
87 drv_data->in_min[i] = val; in menf21bmc_hwmon_get_volt_limits()
89 val = i2c_smbus_read_word_data(drv_data->i2c_client, in menf21bmc_hwmon_get_volt_limits()
94 drv_data->in_max[i] = val; in menf21bmc_hwmon_get_volt_limits()
102 struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); in label_show() local
104 return sprintf(buf, "%s\n", input_names[attr->index]); in label_show()
110 struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); in in_show() local
116 return sprintf(buf, "%d\n", drv_data->in_val[attr->index]); in in_show()
122 struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); in min_show() local
125 return sprintf(buf, "%d\n", drv_data->in_min[attr->index]); in min_show()
131 struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); in max_show() local
134 return sprintf(buf, "%d\n", drv_data->in_max[attr->index]); in max_show()
139 static SENSOR_DEVICE_ATTR_RO(in0_max, max, 0);
143 static SENSOR_DEVICE_ATTR_RO(in1_max, max, 1);
147 static SENSOR_DEVICE_ATTR_RO(in2_max, max, 2);
151 static SENSOR_DEVICE_ATTR_RO(in3_max, max, 3);
155 static SENSOR_DEVICE_ATTR_RO(in4_max, max, 4);
159 &sensor_dev_attr_in0_input.dev_attr.attr,
160 &sensor_dev_attr_in0_min.dev_attr.attr,
161 &sensor_dev_attr_in0_max.dev_attr.attr,
162 &sensor_dev_attr_in0_label.dev_attr.attr,
164 &sensor_dev_attr_in1_input.dev_attr.attr,
165 &sensor_dev_attr_in1_min.dev_attr.attr,
166 &sensor_dev_attr_in1_max.dev_attr.attr,
167 &sensor_dev_attr_in1_label.dev_attr.attr,
169 &sensor_dev_attr_in2_input.dev_attr.attr,
170 &sensor_dev_attr_in2_min.dev_attr.attr,
171 &sensor_dev_attr_in2_max.dev_attr.attr,
172 &sensor_dev_attr_in2_label.dev_attr.attr,
174 &sensor_dev_attr_in3_input.dev_attr.attr,
175 &sensor_dev_attr_in3_min.dev_attr.attr,
176 &sensor_dev_attr_in3_max.dev_attr.attr,
177 &sensor_dev_attr_in3_label.dev_attr.attr,
179 &sensor_dev_attr_in4_input.dev_attr.attr,
180 &sensor_dev_attr_in4_min.dev_attr.attr,
181 &sensor_dev_attr_in4_max.dev_attr.attr,
182 &sensor_dev_attr_in4_label.dev_attr.attr,
192 struct i2c_client *i2c_client = to_i2c_client(pdev->dev.parent); in menf21bmc_hwmon_probe()
195 drv_data = devm_kzalloc(&pdev->dev, sizeof(struct menf21bmc_hwmon), in menf21bmc_hwmon_probe()
198 return -ENOMEM; in menf21bmc_hwmon_probe()
200 drv_data->i2c_client = i2c_client; in menf21bmc_hwmon_probe()
204 dev_err(&pdev->dev, "failed to read sensor limits"); in menf21bmc_hwmon_probe()
208 hwmon_dev = devm_hwmon_device_register_with_groups(&pdev->dev, in menf21bmc_hwmon_probe()
214 dev_info(&pdev->dev, "MEN 14F021P00 BMC hwmon device enabled"); in menf21bmc_hwmon_probe()
222 .name = DRV_NAME,