Lines Matching refs:hwmon
60 static int da9055_adc_manual_read(struct da9055_hwmon *hwmon, in da9055_adc_manual_read() argument
67 struct da9055 *da9055 = hwmon->da9055; in da9055_adc_manual_read()
72 mutex_lock(&hwmon->irq_lock); in da9055_adc_manual_read()
82 if (!wait_for_completion_timeout(&hwmon->done, in da9055_adc_manual_read()
107 mutex_unlock(&hwmon->irq_lock); in da9055_adc_manual_read()
113 struct da9055_hwmon *hwmon = irq_data; in da9055_auxadc_irq() local
115 complete(&hwmon->done); in da9055_auxadc_irq()
146 struct da9055_hwmon *hwmon = dev_get_drvdata(dev); in da9055_read_auto_ch() local
150 mutex_lock(&hwmon->hwmon_lock); in da9055_read_auto_ch()
152 ret = da9055_enable_auto_mode(hwmon->da9055, channel); in da9055_read_auto_ch()
158 adc = da9055_reg_read(hwmon->da9055, DA9055_REG_VSYS_RES + channel); in da9055_read_auto_ch()
164 ret = da9055_disable_auto_mode(hwmon->da9055, channel); in da9055_read_auto_ch()
168 mutex_unlock(&hwmon->hwmon_lock); in da9055_read_auto_ch()
173 da9055_disable_auto_mode(hwmon->da9055, channel); in da9055_read_auto_ch()
175 mutex_unlock(&hwmon->hwmon_lock); in da9055_read_auto_ch()
182 struct da9055_hwmon *hwmon = dev_get_drvdata(dev); in da9055_read_tjunc() local
186 tjunc = da9055_adc_manual_read(hwmon, DA9055_ADC_TJUNC); in da9055_read_tjunc()
190 toffset = da9055_reg_read(hwmon->da9055, DA9055_REG_T_OFFSET); in da9055_read_tjunc()
251 struct da9055_hwmon *hwmon; in da9055_hwmon_probe() local
255 hwmon = devm_kzalloc(dev, sizeof(struct da9055_hwmon), GFP_KERNEL); in da9055_hwmon_probe()
256 if (!hwmon) in da9055_hwmon_probe()
259 mutex_init(&hwmon->hwmon_lock); in da9055_hwmon_probe()
260 mutex_init(&hwmon->irq_lock); in da9055_hwmon_probe()
262 init_completion(&hwmon->done); in da9055_hwmon_probe()
263 hwmon->da9055 = dev_get_drvdata(pdev->dev.parent); in da9055_hwmon_probe()
272 "adc-irq", hwmon); in da9055_hwmon_probe()
274 dev_err(hwmon->da9055->dev, "DA9055 ADC IRQ failed ret=%d\n", in da9055_hwmon_probe()
280 hwmon, in da9055_hwmon_probe()