]> git.itanic.dy.fi Git - linux-stable/commitdiff
dt-bindings: i2c: migrate mt7621 text bindings to YAML
authorSergio Paracuellos <sergio.paracuellos@gmail.com>
Tue, 20 Sep 2022 05:20:50 +0000 (07:20 +0200)
committerRob Herring <robh@kernel.org>
Mon, 26 Sep 2022 19:08:20 +0000 (14:08 -0500)
SoC MT7621 I2C bindings used text format, so migrate them to YAML.
There are some additions to the binding that were not in the original
txt file. This binding is used in MT7621 and MT7628a Ralink SoCs. To
properly match both dts nodes in tree we need to add to the schema
'clocks', 'clock-names' and 'reset-names'. Both 'clock-names' and
'reset-names' use 'i2c' as string so maintain that as const in
the schema. Also, Properly update MAINTAINERS file to align the
changes.

Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220920052050.582321-1-sergio.paracuellos@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/i2c/i2c-mt7621.txt [deleted file]
Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml [new file with mode: 0644]
MAINTAINERS

diff --git a/Documentation/devicetree/bindings/i2c/i2c-mt7621.txt b/Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
deleted file mode 100644 (file)
index bc36f0e..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-MediaTek MT7621/MT7628 I2C master controller
-
-Required properties:
-
-- compatible: Should be one of the following:
-  - "mediatek,mt7621-i2c": for MT7621/MT7628/MT7688 platforms
-- #address-cells: should be 1.
-- #size-cells: should be 0.
-- reg: Address and length of the register set for the device
-- resets: phandle to the reset controller asserting this device in
-          reset
-  See ../reset/reset.txt for details.
-
-Optional properties :
-
-Example:
-
-i2c: i2c@900 {
-       compatible = "mediatek,mt7621-i2c";
-       reg = <0x900 0x100>;
-       #address-cells = <1>;
-       #size-cells = <0>;
-       resets = <&rstctrl 16>;
-       reset-names = "i2c";
-};
diff --git a/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml b/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml
new file mode 100644 (file)
index 0000000..118ec00
--- /dev/null
@@ -0,0 +1,61 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/mediatek,mt7621-i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+maintainers:
+  - Stefan Roese <sr@denx.de>
+
+title: Mediatek MT7621/MT7628 I2C master controller
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:
+    const: mediatek,mt7621-i2c
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+  clock-names:
+    const: i2c
+
+  resets:
+    maxItems: 1
+
+  reset-names:
+    const: i2c
+
+required:
+  - compatible
+  - reg
+  - resets
+  - "#address-cells"
+  - "#size-cells"
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/mt7621-clk.h>
+    #include <dt-bindings/reset/mt7621-reset.h>
+
+    i2c: i2c@900 {
+      compatible = "mediatek,mt7621-i2c";
+      reg = <0x900 0x100>;
+      clocks = <&sysc MT7621_CLK_I2C>;
+      clock-names = "i2c";
+      resets = <&sysc MT7621_RST_I2C>;
+      reset-names = "i2c";
+
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      pinctrl-names = "default";
+      pinctrl-0 = <&i2c_pins>;
+    };
index eaca613aa142f88a65dd5f1d6f58ffc66dfd1bc2..c0c33ad7450324266b9c06f2512748046f31a9e7 100644 (file)
@@ -12865,7 +12865,7 @@ MEDIATEK MT7621/28/88 I2C DRIVER
 M:     Stefan Roese <sr@denx.de>
 L:     linux-i2c@vger.kernel.org
 S:     Maintained
-F:     Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
+F:     Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml
 F:     drivers/i2c/busses/i2c-mt7621.c
 
 MEDIATEK MT7621 PCIE CONTROLLER DRIVER