diff mbox series

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

Message ID 20201031181801.742585-2-jic23@kernel.org
State Needs Review / ACK
Delegated to: Peter Rosin
Headers show
Series dt-bindings: yaml conversion of i2c-gate and IIO users | expand

Commit Message

Jonathan Cameron Oct. 31, 2020, 6:17 p.m. UTC
From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Needed to reference from the invensense,mpu6050 yaml binding.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Peter Rosin <peda@axentia.se>
Cc: Wolfram Sang <wsa@the-dreams.de>
---
 .../devicetree/bindings/i2c/i2c-gate.txt      | 41 ---------------
 .../devicetree/bindings/i2c/i2c-gate.yaml     | 52 +++++++++++++++++++
 2 files changed, 52 insertions(+), 41 deletions(-)

Comments

Rob Herring Nov. 3, 2020, 2:25 a.m. UTC | #1
On Sat, Oct 31, 2020 at 06:17:59PM +0000, Jonathan Cameron wrote:
> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> 
> Needed to reference from the invensense,mpu6050 yaml binding.
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Cc: Peter Rosin <peda@axentia.se>
> Cc: Wolfram Sang <wsa@the-dreams.de>
> ---
>  .../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@axentia.se>
> +
> +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
>
diff mbox series

Patch

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