Re: [PATCH 14/54] dt-bindings: hwmon: Add IIO HWMON binding

Jonathan Cameron
2021-07-22T09:22:53Z

On Wed, 21 Jul 2021 16:03:44 +0200
Maxime Ripard <maxime@cerno.tech> wrote:

> Even though we had the iio-hwmon driver for some time and a number of
> boards using it already, we never had a binding for it. Let's add it
> based on what the driver expects and the boards are providing.
>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: Jean Delvare <jdelvare@suse.com>
> Cc: Jonathan Cameron <jic23@kernel.org>
> Cc: linux-hwmon@vger.kernel.org
> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> ---
> .../devicetree/bindings/hwmon/iio-hwmon.yaml | 37 +++++++++++++++++++
> 1 file changed, 37 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/hwmon/iio-hwmon.yaml
>
> diff --git a/Documentation/devicetree/bindings/hwmon/iio-hwmon.yaml b/Documentation/devicetree/bindings/hwmon/iio-hwmon.yaml
> new file mode 100644
> index 000000000000..49dd40f663a6
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/iio-hwmon.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/hwmon/iio-hwmon.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: ADC-attached Hardware Sensor Device Tree Bindings
> +
> +maintainers:
> + - Jonathan Cameron <jic23@kernel.org>

I'd like to share the blame for this one. Binding was originally added
by Guenter.

https://lore.kernel.org/linux-iio/1359668588-13678-4-git-send-email-linux@roeck-us.net/
https://lore.kernel.org/linux-iio/1359668588-13678-11-git-send-email-linux@roeck-us.net/
:)

As bindings go this one has always been controversial because
it's mapping between linux subsystems rather than really describing
hardware. We've had various discussions over the years on how to do
this differently, but perhaps just documenting the current state is the
way to go. That doesn't stop us moving to something better in the
future.

> +
> +description: >
> + Bindings for hardware monitoring devices connected to ADC controllers
> + supporting the Industrial I/O bindings.
> +
> +properties:
> + compatible:
> + const: iio-hwmon
> +
> + io-channels:
> + minItems: 1
> + maxItems: 1024

Why 1024?

> + description: >
> + List of phandles to ADC channels to read the monitoring values
> +
> +required:
> + - compatible
> + - io-channels
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + iio-hwmon {
> + compatible = "iio-hwmon";
> + io-channels = <&adc 1>, <&adc 2>;
> + };