Lines Matching refs:hwmon
12 #include <linux/hwmon.h>
13 #include <linux/hwmon-sysfs.h>
55 static int da9055_adc_manual_read(struct da9055_hwmon *hwmon,
62 struct da9055 *da9055 = hwmon->da9055;
67 mutex_lock(&hwmon->irq_lock);
77 if (!wait_for_completion_timeout(&hwmon->done,
102 mutex_unlock(&hwmon->irq_lock);
108 struct da9055_hwmon *hwmon = irq_data;
110 complete(&hwmon->done);
142 struct da9055_hwmon *hwmon = dev_get_drvdata(dev);
146 mutex_lock(&hwmon->hwmon_lock);
148 ret = da9055_enable_auto_mode(hwmon->da9055, channel);
154 adc = da9055_reg_read(hwmon->da9055, DA9055_REG_VSYS_RES + channel);
160 ret = da9055_disable_auto_mode(hwmon->da9055, channel);
164 mutex_unlock(&hwmon->hwmon_lock);
169 da9055_disable_auto_mode(hwmon->da9055, channel);
171 mutex_unlock(&hwmon->hwmon_lock);
178 struct da9055_hwmon *hwmon = dev_get_drvdata(dev);
182 tjunc = da9055_adc_manual_read(hwmon, DA9055_ADC_TJUNC);
186 toffset = da9055_reg_read(hwmon->da9055, DA9055_REG_T_OFFSET);
237 struct da9055_hwmon *hwmon;
241 hwmon = devm_kzalloc(dev, sizeof(struct da9055_hwmon), GFP_KERNEL);
242 if (!hwmon)
245 mutex_init(&hwmon->hwmon_lock);
246 mutex_init(&hwmon->irq_lock);
248 init_completion(&hwmon->done);
249 hwmon->da9055 = dev_get_drvdata(pdev->dev.parent);
258 "adc-irq", hwmon);
260 dev_err(hwmon->da9055->dev, "DA9055 ADC IRQ failed ret=%d\n",
266 hwmon,
274 .name = "da9055-hwmon",
283 MODULE_ALIAS("platform:da9055-hwmon");