Re: [PATCH v1 8/9] dt-bindings: iio: afe: add binding for temperature-sense-current

From: Jonathan Cameron
Date: Tue Jun 01 2021 - 12:47:25 EST


On Sat, 29 May 2021 20:59:16 -0400
Liam Beguin <liambeguin@xxxxxxxxx> wrote:

> From: Liam Beguin <lvb@xxxxxxxxxx>
>
> An ADC is often used to measure other quantities indirectly. This
> binding describe one cases, the measurement of a temperature through
> a current sense amplifier (such as an AD590) and a sense resistor.
>
> Signed-off-by: Liam Beguin <lvb@xxxxxxxxxx>
> ---
> .../iio/afe/temperature-sense-current.yaml | 61 +++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 62 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml b/Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml
> new file mode 100644
> index 000000000000..1bac74486102
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml
> @@ -0,0 +1,61 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/afe/temperature-sense-current.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Temperature Sense Current
> +
> +maintainers:
> + - Liam Beguin <lvb@xxxxxxxxxx>
> +
> +description: |
> + When an io-channel measures the output voltage for a temperature current
> + sense amplifier such as the AD950, the interesting measurement is almost
> + always the corresponding temperature, not the voltage output.
> + This binding describes such a circuit.
> +
> +properties:
> + compatible:
> + const: temperature-sense-current

What about such a sensor connected to a current ADC? That was what I was
immediately expecting when I saw the naming.

You could daisy chain this with the current-sense-resistor AFE though
that does seem overly messy.

Anyhow this should be called something that reflects the presence of
that sense resitor.

> +
> + io-channels:
> + maxItems: 1
> + description: |
> + Channel node of a voltage io-channel.
> +
> + '#io-channel-cells':
> + const: 1
> +
> + sense-resistor-ohms:
> + description: The sense resistance.
> +
> + alpha-micro-amps-per-degree:
> + description: |
> + Linear output current gain of the temperature IC.
> +
> + use-kelvin-scale:
> + type: boolean
> + description: |
> + Boolean indicating if alpha uses Kelvin degrees instead of Celsius.
> +
> +additionalProperties: false
> +required:
> + - compatible
> + - io-channels
> + - sense-resistor-ohms
> + - alpha-micro-amps-per-degree
> +
> +examples:
> + - |
> + ad590: iio-rescale0 {
> + compatible = "temperature-sense-current";
> + #io-channel-cells = <1>;
> + io-channels = <&temp_adc 2>;
> +
> + sense-resistor-ohms = <8060>;
> + use-kelvin-scale;
> + alpha-micro-amps-per-degree = <1>;
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index a7279af85adb..0eb7fcd94b66 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -8721,6 +8721,7 @@ L: linux-iio@xxxxxxxxxxxxxxx
> S: Maintained
> F: Documentation/devicetree/bindings/iio/afe/current-sense-amplifier.yaml
> F: Documentation/devicetree/bindings/iio/afe/current-sense-shunt.yaml
> +F: Documentation/devicetree/bindings/iio/afe/temperature-sense-current.yaml
> F: Documentation/devicetree/bindings/iio/afe/temperature-sense-rtd.yaml
> F: Documentation/devicetree/bindings/iio/afe/voltage-divider.yaml
> F: drivers/iio/afe/iio-rescale.c