• Home
  • Raw
  • Download

Lines Matching +full:micro +full:- +full:watts

1 // SPDX-License-Identifier: GPL-2.0-only
14 #include <linux/hwmon-sysfs.h>
19 * struct iio_hwmon_state - device instance state
47 struct iio_channel *chan = &state->channels[sattr->index]; in iio_hwmon_read_val()
59 result *= 1000; /* mili-Watts to micro-Watts conversion */ in iio_hwmon_read_val()
66 struct device *dev = &pdev->dev; in iio_hwmon_probe()
78 if (PTR_ERR(channels) == -ENODEV) in iio_hwmon_probe()
79 return -EPROBE_DEFER; in iio_hwmon_probe()
85 return -ENOMEM; in iio_hwmon_probe()
87 st->channels = channels; in iio_hwmon_probe()
90 while (st->channels[st->num_channels].indio_dev) in iio_hwmon_probe()
91 st->num_channels++; in iio_hwmon_probe()
93 st->attrs = devm_kcalloc(dev, in iio_hwmon_probe()
94 st->num_channels + 1, sizeof(*st->attrs), in iio_hwmon_probe()
96 if (st->attrs == NULL) in iio_hwmon_probe()
97 return -ENOMEM; in iio_hwmon_probe()
99 for (i = 0; i < st->num_channels; i++) { in iio_hwmon_probe()
105 return -ENOMEM; in iio_hwmon_probe()
107 sysfs_attr_init(&a->dev_attr.attr); in iio_hwmon_probe()
108 ret = iio_get_channel_type(&st->channels[i], &type); in iio_hwmon_probe()
134 return -EINVAL; in iio_hwmon_probe()
137 a->dev_attr.attr.name = devm_kasprintf(dev, GFP_KERNEL, in iio_hwmon_probe()
140 if (a->dev_attr.attr.name == NULL) in iio_hwmon_probe()
141 return -ENOMEM; in iio_hwmon_probe()
143 a->dev_attr.show = iio_hwmon_read_val; in iio_hwmon_probe()
144 a->dev_attr.attr.mode = 0444; in iio_hwmon_probe()
145 a->index = i; in iio_hwmon_probe()
146 st->attrs[i] = &a->dev_attr.attr; in iio_hwmon_probe()
149 st->attr_group.attrs = st->attrs; in iio_hwmon_probe()
150 st->groups[0] = &st->attr_group; in iio_hwmon_probe()
152 if (dev->of_node) { in iio_hwmon_probe()
153 sname = devm_kasprintf(dev, GFP_KERNEL, "%pOFn", dev->of_node); in iio_hwmon_probe()
155 return -ENOMEM; in iio_hwmon_probe()
156 strreplace(sname, '-', '_'); in iio_hwmon_probe()
162 st->groups); in iio_hwmon_probe()
167 { .compatible = "iio-hwmon", },