Lines Matching defs:hwmon
7 #include <linux/hwmon.h>
8 #include <linux/hwmon-sysfs.h>
57 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
59 u8 reg = hwmon->pdata->fan_base + (2 * attr->index);
63 ret = regmap_bulk_read(hwmon->regmap, reg, regs, 2);
75 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
77 u8 reg = hwmon->pdata->fan_base + (2 * attr->index);
90 err = regmap_bulk_write(hwmon->regmap, reg, regs, 2);
149 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
157 ch = hwmon->in_ch[channel];
160 ch = hwmon->temp_ch[channel];
163 ch = hwmon->fan_ch[channel];
170 ret = regmap_bulk_read(hwmon->regmap, ch->reg, buf, sz);
215 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
219 *buf = hwmon->in_ch[channel]->name;
222 *buf = hwmon->temp_ch[channel]->name;
225 *buf = hwmon->fan_ch[channel]->name;
319 struct gsc_hwmon_data *hwmon;
329 hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL);
330 if (!hwmon)
332 hwmon->gsc = gsc;
333 hwmon->pdata = pdata;
335 hwmon->regmap = devm_regmap_init(dev, &gsc_hwmon_regmap_bus,
338 if (IS_ERR(hwmon->regmap))
339 return PTR_ERR(hwmon->regmap);
341 for (i = 0, i_in = 0, i_temp = 0, i_fan = 0; i < hwmon->pdata->nchannels; i++) {
350 hwmon->temp_ch[i_temp] = ch;
351 hwmon->temp_config[i_temp] = HWMON_T_INPUT |
360 hwmon->fan_ch[i_fan] = ch;
361 hwmon->fan_config[i_fan] = HWMON_F_INPUT |
372 hwmon->in_ch[i_in] = ch;
373 hwmon->in_config[i_in] =
384 hwmon->chip.ops = &gsc_hwmon_ops;
385 hwmon->chip.info = hwmon->info;
386 hwmon->info[0] = &hwmon->temp_info;
387 hwmon->info[1] = &hwmon->in_info;
388 hwmon->info[2] = &hwmon->fan_info;
389 hwmon->temp_info.type = hwmon_temp;
390 hwmon->temp_info.config = hwmon->temp_config;
391 hwmon->in_info.type = hwmon_in;
392 hwmon->in_info.config = hwmon->in_config;
393 hwmon->fan_info.type = hwmon_fan;
394 hwmon->fan_info.config = hwmon->fan_config;
398 KBUILD_MODNAME, hwmon,
399 &hwmon->chip, groups);
410 .name = "gsc-hwmon",