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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 22 May 2021 12:29:08 +0100
Jonathan Cameron <jic23@xxxxxxxxxx> wrote:

> From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> 
> Straight conversion of the txt file using the mux-consumer.yaml
> binding now that is available.
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> Cc: Peter Rosin <peda@xxxxxxxxxx>
> Cc: Rob Herring <robh@xxxxxxxxxx>
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@xxxxxxxxxx>
> +
> +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@xxxxxxxxxx>
>  L:	linux-iio@xxxxxxxxxxxxxxx
>  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




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux