[PATCH v1] meson saradc: add iio device attrib to switch channel 7 mux
Andy Shevchenko
andriy.shevchenko at linux.intel.com
Sat May 27 01:21:01 PDT 2023
On Wed, May 24, 2023 at 03:01:11AM +0300, George Stark wrote:
> Patch adds two sysfs nodes: chan7_mux to set mux state
> and chan7_mux_available to show available mux states.
> Mux can be used to debug and calibrate adc by
> switching and measuring well-known inputs like gnd, vdd etc.
GND
Vdd
...
> +static ssize_t chan7_mux_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t count)
> +{
> + struct iio_dev *indio_dev = dev_to_iio_dev(dev);
> + int i;
> +
> + for (i = 0; i < ARRAY_SIZE(chan7_vol); i++)
> + if (!strcmp(chan7_vol[i], buf)) {
> + meson_sar_adc_set_chan7_mux(indio_dev, i);
> + return count;
> + }
> +
> + return -EINVAL;
NIH sysfs_match_string().
> +}
...
> +static IIO_DEVICE_ATTR_RW(chan7_mux, -1);
> +static IIO_DEVICE_ATTR_RO(chan7_mux_available, -1);
Place each of them near to the respective callback(s),
...
> +static struct attribute *meson_sar_adc_attrs[] = {
> + &iio_dev_attr_chan7_mux_available.dev_attr.attr,
> + &iio_dev_attr_chan7_mux.dev_attr.attr,
> + NULL,
No comma for the terminator entry.
> +};
--
With Best Regards,
Andy Shevchenko
More information about the linux-arm-kernel
mailing list