Re: [PATCH 1/3] dt-bindings:i2c:i2c-gate: txt to yaml conversion

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

 



On Sat, Oct 31, 2020 at 06:17:59PM +0000, Jonathan Cameron wrote:
> From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> 
> Needed to reference from the invensense,mpu6050 yaml binding.
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> Cc: Peter Rosin <peda@xxxxxxxxxx>
> Cc: Wolfram Sang <wsa@xxxxxxxxxxxxx>
> ---
>  .../devicetree/bindings/i2c/i2c-gate.txt      | 41 ---------------
>  .../devicetree/bindings/i2c/i2c-gate.yaml     | 52 +++++++++++++++++++
>  2 files changed, 52 insertions(+), 41 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-gate.txt b/Documentation/devicetree/bindings/i2c/i2c-gate.txt
> deleted file mode 100644
> index 1846d236e656..000000000000
> --- a/Documentation/devicetree/bindings/i2c/i2c-gate.txt
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -An i2c gate is useful to e.g. reduce the digital noise for RF tuners connected
> -to the i2c bus. Gates are similar to arbitrators in that you need to perform
> -some kind of operation to access the i2c bus past the arbitrator/gate, but
> -there are no competing masters to consider for gates and therefore there is
> -no arbitration happening for gates.
> -
> -Common i2c gate properties.
> -
> -- i2c-gate child node
> -
> -Required properties for the i2c-gate child node:
> -- #address-cells = <1>;
> -- #size-cells = <0>;
> -
> -Optional properties for i2c-gate child node:
> -- Child nodes conforming to i2c bus binding
> -
> -
> -Example :
> -
> -	/*
> -	   An Invensense mpu9150 at address 0x68 featuring an on-chip Asahi
> -	   Kasei ak8975 compass behind a gate.
> -	 */
> -
> -	mpu9150@68 {
> -		compatible = "invensense,mpu9150";
> -		reg = <0x68>;
> -		interrupt-parent = <&gpio1>;
> -		interrupts = <18 1>;
> -
> -		i2c-gate {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			ax8975@c {
> -				compatible = "ak,ak8975";
> -				reg = <0x0c>;
> -			};
> -		};
> -	};
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-gate.yaml b/Documentation/devicetree/bindings/i2c/i2c-gate.yaml
> new file mode 100644
> index 000000000000..29aa0690ed9a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i2c/i2c-gate.yaml
> @@ -0,0 +1,52 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/i2c/i2c-gate.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Common i2c gate properties
> +
> +maintainers:
> +  - Peter Rosin <peda@xxxxxxxxxx>
> +
> +description: |
> +  An i2c gate is useful to e.g. reduce the digital noise for RF tuners connected
> +  to the i2c bus. Gates are similar to arbitrators in that you need to perform
> +  some kind of operation to access the i2c bus past the arbitrator/gate, but
> +  there are no competing masters to consider for gates and therefore there is
> +  no arbitration happening for gates.
> +
> +properties:
> +  $nodename:
> +    const: i2c-gate
> +
> +  "#address-cells":
> +    const: 1
> +
> +  "#size-cells":
> +    const: 0
> +
> +patternProperties:
> +  "^[a-zA-Z][a-zA-Z0-9,+\\-._]{0,63}@[0-9a-fA-F]+$":
> +    type: object
> +    description: |
> +      Child nodes for i2c devices behind the gate.

So reference i2c-controller.yaml. With that, you only need $nodename.

> +
> +required:
> +  - "#address-cells"
> +  - "#size-cells"
> +
> +additionalProperties: true
> +
> +examples:
> +  - |
> +    i2c-gate {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +        ak8975@c {
> +            compatible = "ak,ak8975";
> +            reg = <0x0c>;
> +        };
> +    };
> +...
> +
> -- 
> 2.28.0
> 



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux