Lines Matching defs:hwmon
7 #include <linux/hwmon.h>
8 #include <linux/hwmon-sysfs.h>
56 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
58 u8 reg = hwmon->pdata->fan_base + (2 * attr->index);
62 ret = regmap_bulk_read(hwmon->regmap, reg, regs, 2);
74 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
76 u8 reg = hwmon->pdata->fan_base + (2 * attr->index);
89 err = regmap_bulk_write(hwmon->regmap, reg, regs, 2);
148 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
156 ch = hwmon->in_ch[channel];
159 ch = hwmon->temp_ch[channel];
162 ch = hwmon->fan_ch[channel];
169 ret = regmap_bulk_read(hwmon->regmap, ch->reg, buf, sz);
214 struct gsc_hwmon_data *hwmon = dev_get_drvdata(dev);
218 *buf = hwmon->in_ch[channel]->name;
221 *buf = hwmon->temp_ch[channel]->name;
224 *buf = hwmon->fan_ch[channel]->name;
307 struct gsc_hwmon_data *hwmon;
317 hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL);
318 if (!hwmon)
320 hwmon->gsc = gsc;
321 hwmon->pdata = pdata;
323 hwmon->regmap = devm_regmap_init(dev, &gsc_hwmon_regmap_bus,
326 if (IS_ERR(hwmon->regmap))
327 return PTR_ERR(hwmon->regmap);
329 for (i = 0, i_in = 0, i_temp = 0, i_fan = 0; i < hwmon->pdata->nchannels; i++) {
338 hwmon->temp_ch[i_temp] = ch;
339 hwmon->temp_config[i_temp] = HWMON_T_INPUT |
348 hwmon->fan_ch[i_fan] = ch;
349 hwmon->fan_config[i_fan] = HWMON_F_INPUT |
360 hwmon->in_ch[i_in] = ch;
361 hwmon->in_config[i_in] =
372 hwmon->chip.ops = &gsc_hwmon_ops;
373 hwmon->chip.info = hwmon->info;
374 hwmon->info[0] = &hwmon->temp_info;
375 hwmon->info[1] = &hwmon->in_info;
376 hwmon->info[2] = &hwmon->fan_info;
377 hwmon->temp_info.type = hwmon_temp;
378 hwmon->temp_info.config = hwmon->temp_config;
379 hwmon->in_info.type = hwmon_in;
380 hwmon->in_info.config = hwmon->in_config;
381 hwmon->fan_info.type = hwmon_fan;
382 hwmon->fan_info.config = hwmon->fan_config;
386 KBUILD_MODNAME, hwmon,
387 &hwmon->chip, groups);
399 .name = "gsc-hwmon",