diff mbox series

[1/1] dt-bindings: iio: multiplexer: Convert io-channel-mux bindings to DT schema

Message ID 20210522112908.1611389-3-jic23@kernel.org (mailing list archive)
State Accepted
Headers show
Series [1/1] dt-bindings: iio: multiplexer: Convert io-channel-mux bindings to DT schema | expand

Commit Message

Jonathan Cameron May 22, 2021, 11:29 a.m. UTC
From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Straight conversion of the txt file using the mux-consumer.yaml
binding now that is available.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Peter Rosin <peda@axentia.se>
Cc: Rob Herring <robh@kernel.org>
---
 .../iio/multiplexer/io-channel-mux.txt        | 39 ----------
 .../iio/multiplexer/io-channel-mux.yaml       | 71 +++++++++++++++++++
 MAINTAINERS                                   |  2 +-
 3 files changed, 72 insertions(+), 40 deletions(-)

Comments

Jonathan Cameron May 22, 2021, 5:27 p.m. UTC | #1
On Sat, 22 May 2021 12:29:08 +0100
Jonathan Cameron <jic23@kernel.org> wrote:

> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> 
> Straight conversion of the txt file using the mux-consumer.yaml
> binding now that is available.
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Cc: Peter Rosin <peda@axentia.se>
> Cc: Rob Herring <robh@kernel.org>
oops, accidental earlier version included here. Look at the other patch 1/1!

J
> ---
>  .../iio/multiplexer/io-channel-mux.txt        | 39 ----------
>  .../iio/multiplexer/io-channel-mux.yaml       | 71 +++++++++++++++++++
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 72 insertions(+), 40 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
> deleted file mode 100644
> index d2b3105dba67..000000000000
> --- a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
> +++ /dev/null
> @@ -1,39 +0,0 @@
> -I/O channel multiplexer bindings
> -
> -If a multiplexer is used to select which hardware signal is fed to
> -e.g. an ADC channel, these bindings describe that situation.
> -
> -Required properties:
> -- compatible : "io-channel-mux"
> -- io-channels : Channel node of the parent channel that has multiplexed
> -		input.
> -- io-channel-names : Should be "parent".
> -- #address-cells = <1>;
> -- #size-cells = <0>;
> -- mux-controls : Mux controller node to use for operating the mux
> -- channels : List of strings, labeling the mux controller states.
> -
> -For each non-empty string in the channels property, an io-channel will
> -be created. The number of this io-channel is the same as the index into
> -the list of strings in the channels property, and also matches the mux
> -controller state. The mux controller state is described in
> -../mux/mux-controller.yaml
> -
> -Example:
> -	mux: mux-controller {
> -		compatible = "gpio-mux";
> -		#mux-control-cells = <0>;
> -
> -		mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
> -			    <&pioA 1 GPIO_ACTIVE_HIGH>;
> -	};
> -
> -	adc-mux {
> -		compatible = "io-channel-mux";
> -		io-channels = <&adc 0>;
> -		io-channel-names = "parent";
> -
> -		mux-controls = <&mux>;
> -
> -		channels = "sync", "in", "system-regulator";
> -	};
> diff --git a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
> new file mode 100644
> index 000000000000..37382b85f2b8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
> @@ -0,0 +1,71 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/multiplexer/io-channel-mux.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: I/O channel multiplexer bindings
> +
> +maintainers:
> +  - Peter Rosin <peda@axentia.se>
> +
> +description: |
> +  If a multiplexer is used to select which hardware signal is fed to
> +  e.g. an ADC channel, these bindings describe that situation.
> +
> +  For each non-empty string in the channels property, an io-channel will be
> +  created. The number of this io-channel is the same as the index into the list
> +  of strings in the channels property, and also matches the mux controller
> +  state. The mux controller state is described in
> +  Documentation/device-tree/bindings/mux/mux-controller.yaml
> +
> +properties:
> +
> +  compatible:
> +    const: "io-channel-mux"
> +
> +  io-channels:
> +    maxItems: 1
> +    description: Channel node of the parent channel that has multiplexed input.
> +
> +  io-channel-names:
> +    const: "parent"
> +
> +  mux-controls:
> +    $ref: "../../mux/mux-consumer.yaml"
> +  mux-control-names: true
> +
> +  channels:
> +    $ref: /schemas/types.yaml#/definitions/string-array
> +    description:
> +      List of strings, labeling the mux controller states.
> +
> +required:
> +  - compatible
> +  - io-channels
> +  - io-channel-names
> +  - mux-controls
> +  - channels
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +    mux: mux-controller {
> +      compatible = "gpio-mux";
> +      #mux-control-cells = <0>;
> +
> +      mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
> +                  <&pioA 1 GPIO_ACTIVE_HIGH>;
> +    };
> +
> +    adc-mux {
> +      compatible = "io-channel-mux";
> +      io-channels = <&adc 0>;
> +      io-channel-names = "parent";
> +
> +      mux-controls = <&mux>;
> +      channels = "sync", "in", "system-regulator";
> +    };
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index fc771d2aacef..eba1687688a5 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -8858,7 +8858,7 @@ IIO MULTIPLEXER
>  M:	Peter Rosin <peda@axentia.se>
>  L:	linux-iio@vger.kernel.org
>  S:	Maintained
> -F:	Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
> +F:	Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
>  F:	drivers/iio/multiplexer/iio-mux.c
>  
>  IIO SCMI BASED DRIVER
Rob Herring (Arm) June 1, 2021, 11:45 p.m. UTC | #2
On Sat, 22 May 2021 12:29:08 +0100, Jonathan Cameron wrote:
> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> 
> Straight conversion of the txt file using the mux-consumer.yaml
> binding now that is available.
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Cc: Peter Rosin <peda@axentia.se>
> Cc: Rob Herring <robh@kernel.org>
> ---
>  .../iio/multiplexer/io-channel-mux.txt        | 39 ----------
>  .../iio/multiplexer/io-channel-mux.yaml       | 71 +++++++++++++++++++
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 72 insertions(+), 40 deletions(-)
> 

Applied, thanks!
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
deleted file mode 100644
index d2b3105dba67..000000000000
--- a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
+++ /dev/null
@@ -1,39 +0,0 @@ 
-I/O channel multiplexer bindings
-
-If a multiplexer is used to select which hardware signal is fed to
-e.g. an ADC channel, these bindings describe that situation.
-
-Required properties:
-- compatible : "io-channel-mux"
-- io-channels : Channel node of the parent channel that has multiplexed
-		input.
-- io-channel-names : Should be "parent".
-- #address-cells = <1>;
-- #size-cells = <0>;
-- mux-controls : Mux controller node to use for operating the mux
-- channels : List of strings, labeling the mux controller states.
-
-For each non-empty string in the channels property, an io-channel will
-be created. The number of this io-channel is the same as the index into
-the list of strings in the channels property, and also matches the mux
-controller state. The mux controller state is described in
-../mux/mux-controller.yaml
-
-Example:
-	mux: mux-controller {
-		compatible = "gpio-mux";
-		#mux-control-cells = <0>;
-
-		mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
-			    <&pioA 1 GPIO_ACTIVE_HIGH>;
-	};
-
-	adc-mux {
-		compatible = "io-channel-mux";
-		io-channels = <&adc 0>;
-		io-channel-names = "parent";
-
-		mux-controls = <&mux>;
-
-		channels = "sync", "in", "system-regulator";
-	};
diff --git a/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
new file mode 100644
index 000000000000..37382b85f2b8
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
@@ -0,0 +1,71 @@ 
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/multiplexer/io-channel-mux.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: I/O channel multiplexer bindings
+
+maintainers:
+  - Peter Rosin <peda@axentia.se>
+
+description: |
+  If a multiplexer is used to select which hardware signal is fed to
+  e.g. an ADC channel, these bindings describe that situation.
+
+  For each non-empty string in the channels property, an io-channel will be
+  created. The number of this io-channel is the same as the index into the list
+  of strings in the channels property, and also matches the mux controller
+  state. The mux controller state is described in
+  Documentation/device-tree/bindings/mux/mux-controller.yaml
+
+properties:
+
+  compatible:
+    const: "io-channel-mux"
+
+  io-channels:
+    maxItems: 1
+    description: Channel node of the parent channel that has multiplexed input.
+
+  io-channel-names:
+    const: "parent"
+
+  mux-controls:
+    $ref: "../../mux/mux-consumer.yaml"
+  mux-control-names: true
+
+  channels:
+    $ref: /schemas/types.yaml#/definitions/string-array
+    description:
+      List of strings, labeling the mux controller states.
+
+required:
+  - compatible
+  - io-channels
+  - io-channel-names
+  - mux-controls
+  - channels
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    mux: mux-controller {
+      compatible = "gpio-mux";
+      #mux-control-cells = <0>;
+
+      mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
+                  <&pioA 1 GPIO_ACTIVE_HIGH>;
+    };
+
+    adc-mux {
+      compatible = "io-channel-mux";
+      io-channels = <&adc 0>;
+      io-channel-names = "parent";
+
+      mux-controls = <&mux>;
+      channels = "sync", "in", "system-regulator";
+    };
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index fc771d2aacef..eba1687688a5 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8858,7 +8858,7 @@  IIO MULTIPLEXER
 M:	Peter Rosin <peda@axentia.se>
 L:	linux-iio@vger.kernel.org
 S:	Maintained
-F:	Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
+F:	Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
 F:	drivers/iio/multiplexer/iio-mux.c
 
 IIO SCMI BASED DRIVER