diff mbox series

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

Message ID 20210721140424.725744-15-maxime@cerno.tech
State Accepted
Commit fb4747d89b4866402fc2230022d59fa60e9e0cd5
Headers show
Series ARM: dts: Last round of DT schema fixes | expand

Commit Message

Maxime Ripard July 21, 2021, 2:03 p.m. UTC
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

Comments

Jonathan Cameron July 22, 2021, 9:20 a.m. UTC | #1
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>;

> +      };
Maxime Ripard July 22, 2021, 9:34 a.m. UTC | #2
Hi Jonathan,

On Thu, Jul 22, 2021 at 10:20:27AM +0100, Jonathan Cameron wrote:
> 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.


There's DT using it already, so I guess it's a bit too late to have that
discussion indeed :)

> > +

> > +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?


Ought to be enough for anyone :)

We have to set a maximum and I couldn't find any actual maximum
documented, if you prefer another value let me know

Maxime
Rob Herring (Arm) July 23, 2021, 9:44 p.m. UTC | #3
On Thu, Jul 22, 2021 at 11:34:53AM +0200, Maxime Ripard wrote:
> Hi Jonathan,

> 

> On Thu, Jul 22, 2021 at 10:20:27AM +0100, Jonathan Cameron wrote:

> > 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.

> 

> There's DT using it already, so I guess it's a bit too late to have that

> discussion indeed :)

> 

> > > +

> > > +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?

> 

> Ought to be enough for anyone :)

> 

> We have to set a maximum and I couldn't find any actual maximum

> documented, if you prefer another value let me know


Just add a comment: '# Should be enough'
diff mbox series

Patch

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>
+
+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
+    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>;
+      };