[PATCH v1 0/9] iio: afe: add temperature rescaling support

Liam Beguin
2021-05-30T00:59:35Z

From: Liam Beguin <lvb@xiphos.com>

Add temperature rescaling support to the IIO Analog Front End driver.

This series adds support for three kinds of temperature front end
circuits:
- temperature-sense-rtd for which the resistance is proportional to the
temperature
- temperature-sense-current for which the current is proportional to the
temperature
- temperature-sense-amplifier for which the voltage is proportional to
the temperature

At first I tried to use iio_convert_raw_to_processed() to get more
precision out of processed values but ran into issues when one of my
ADCs didn't provide a scale. I tried to address this in first patch.

When adding offset support to iio-rescale, I also noticed that
iio_read_channel_processed() assumes that the offset is always an
integer which I tried to address in the second patch.
If it makes sense to add support for fractional offsets, I could give it
a try in another series.

Related to: https://patchwork.kernel.org/project/linux-iio/list/?series=483087

Thanks for your time

Liam Beguin (9):
iio: inkern: always apply scale requested by consumer
iio: inkern: error out on unsupported offset type
iio: afe: rescale: use core to get processed value
iio: afe: rescale: add offset support
iio: afe: rescale: add support for temperature sensors
dt-bindings: iio: afe: update MAINTAINERS file
dt-bindings: iio: afe: add binding for temperature-sense-rtd
dt-bindings: iio: afe: add binding for temperature-sense-current
dt-bindings: iio: afe: add binding for temperature-sense-amplifier

.../iio/afe/temperature-sense-amplifier.yaml | 55 +++++
.../iio/afe/temperature-sense-current.yaml | 61 ++++++
.../iio/afe/temperature-sense-rtd.yaml | 65 ++++++
MAINTAINERS | 9 +-
drivers/iio/afe/iio-rescale.c | 190 +++++++++++++++---
drivers/iio/inkern.c | 12 +-
6 files changed, 354 insertions(+), 38 deletions(-)
create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-amplifier.yaml
create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml
create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-rtd.yaml

base-commit: 9f4ad9e425a1d3b6a34617b8ea226d56a119a717
--
2.30.1.489.g328c10930387