Lines Matching refs:st
63 struct iio_hwmon_state *st; in iio_hwmon_probe() local
78 st = devm_kzalloc(dev, sizeof(*st), GFP_KERNEL); in iio_hwmon_probe()
79 if (st == NULL) { in iio_hwmon_probe()
84 st->channels = channels; in iio_hwmon_probe()
87 while (st->channels[st->num_channels].indio_dev) in iio_hwmon_probe()
88 st->num_channels++; in iio_hwmon_probe()
90 st->attrs = devm_kzalloc(dev, in iio_hwmon_probe()
91 sizeof(*st->attrs) * (st->num_channels + 1), in iio_hwmon_probe()
93 if (st->attrs == NULL) { in iio_hwmon_probe()
98 for (i = 0; i < st->num_channels; i++) { in iio_hwmon_probe()
106 ret = iio_get_channel_type(&st->channels[i], &type); in iio_hwmon_probe()
142 st->attrs[i] = &a->dev_attr.attr; in iio_hwmon_probe()
145 st->attr_group.attrs = st->attrs; in iio_hwmon_probe()
146 st->groups[0] = &st->attr_group; in iio_hwmon_probe()
147 st->hwmon_dev = hwmon_device_register_with_groups(dev, name, st, in iio_hwmon_probe()
148 st->groups); in iio_hwmon_probe()
149 if (IS_ERR(st->hwmon_dev)) { in iio_hwmon_probe()
150 ret = PTR_ERR(st->hwmon_dev); in iio_hwmon_probe()
153 platform_set_drvdata(pdev, st); in iio_hwmon_probe()
163 struct iio_hwmon_state *st = platform_get_drvdata(pdev); in iio_hwmon_remove() local
165 hwmon_device_unregister(st->hwmon_dev); in iio_hwmon_remove()
166 iio_channel_release_all(st->channels); in iio_hwmon_remove()