dt-bindings:i2c:i2c-gate: txt to yaml conversion
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 28 Nov 2020 17:33:41 +0000 (17:33 +0000)
committerRob Herring <robh@kernel.org>
Tue, 8 Dec 2020 21:30:19 +0000 (15:30 -0600)
This file provides very little in the way of actual schema but
does provide a convenient intro to what an i2c-gate node actually
represents.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Peter Rosin <peda@axentia.se>
Cc: Wolfram Sang <wsa@the-dreams.de>
Link: https://lore.kernel.org/r/20201031181801.742585-2-jic23@kernel.org
Link: https://lore.kernel.org/r/20201128173343.390165-2-jic23@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/i2c/i2c-gate.txt [deleted file]
Documentation/devicetree/bindings/i2c/i2c-gate.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/i2c/i2c-gate.txt b/Documentation/devicetree/bindings/i2c/i2c-gate.txt
deleted file mode 100644 (file)
index 1846d23..0000000
+++ /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 (file)
index 0000000..66472f1
--- /dev/null
@@ -0,0 +1,39 @@
+# 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.
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml
+
+properties:
+  $nodename:
+    const: i2c-gate
+
+additionalProperties: true
+
+examples:
+  - |
+    i2c-gate {
+        #address-cells = <1>;
+        #size-cells = <0>;
+        ak8975@c {
+            compatible = "ak,ak8975";
+            reg = <0x0c>;
+        };
+    };
+...
+