lkml.org 
[lkml]   [2019]   [Jun]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v1 0/3] iio: afe: rescale: Add INFO_PROCESSED support
Date
On 2019-06-11 11:56, Mylène Josserand wrote:
> Hello everyone,
>
> You will find a small series that add the support of processed values
> for iio-rescale driver.
> Thanks to that, it is possible to read processed values in sysfs instead
> of getting only raw and scale values.
>
> Here is an example for a 3v3 voltage reading:
> # cat /sys/bus/iio/devices/iio\:device1/in_voltage0_scale
> 3.791015625
> # cat /sys/bus/iio/devices/iio\:device1/in_voltage0_raw
> 879
> # cat /sys/bus/iio/devices/iio\:device1/in_voltage0_input
> 3332
>
> It is also possible to read directly the processed values using iio-hwmon
> driver (see example in patch03):
>
> # cat /sys/class/hwmon/hwmon0/in1_input
> 3328
>
> I seperated my series in 3 patches:
> - Patch01: Move the scale conversion into a function to prepare the
> support of IIO_CHAN_INFO_PROCESSED.
> - Patch02: Add the support of IIO_CHAN_INFO_PROCESSED.
> - Patch03: Add an example of the use of hwmon and voltage-divider nodes
> in device-tree.
>
> If you have any feedbacks on it, I will be pleased to read them!


The last patch about hwmon has nothing to do with this series, and
should be possible as-is without any code changes. No? AFAICT,
iio_hwmon calls iio_read_channel_processed, which calls
iio_convert_raw_to_processed_unlocked in case IIO_CHAN_INFO_PROCESSES
is not handled by the driver. Is that not working?

There is also libiio in userspace that provides the scale as a double
and makes the conversion to a processed value trivial, so the series
is really mostly about the convenience of having a human directly
seeing the processed value in sysfs. Right?

If that is deemed valuable, then I think it should be fixed in a
central location, and not individually for each and every driver.

Anyway, not my call, just stating my opinion, but those are the
reasons for me not adding a processed channel from the very beginning.

Cheers,
Peter

> Best regards,
> Mylène
>
> Mylène Josserand (3):
> iio: afe: rescale: Move scale conversion to new function
> iio: afe: rescale: Add support of CHAN_INFO_PROCESSED
> dt-bindings: iio: afe: Add hwmon example
>
> .../bindings/iio/afe/voltage-divider.txt | 24 ++++++
> drivers/iio/afe/iio-rescale.c | 96 ++++++++++++++++------
> 2 files changed, 96 insertions(+), 24 deletions(-)
>

\
 
 \ /
  Last update: 2019-06-11 13:04    [W:0.123 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site