OSDN Git Service

dt-bindings: net: Convert iProc MDIO mux to YAML
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 6 Dec 2021 18:00:49 +0000 (10:00 -0800)
committerRob Herring <robh@kernel.org>
Wed, 8 Dec 2021 19:51:13 +0000 (13:51 -0600)
Conver the Broadcom iProc MDIO mux Device Tree binding to YAML.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211206180049.2086907-9-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.txt [deleted file]
Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.txt b/Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.txt
deleted file mode 100644 (file)
index deb9e85..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-Properties for an MDIO bus multiplexer found in Broadcom iProc based SoCs.
-
-This MDIO bus multiplexer defines buses that could be internal as well as
-external to SoCs and could accept MDIO transaction compatible to C-22 or
-C-45 Clause. When child bus is selected, one needs to select these two
-properties as well to generate desired MDIO transaction on appropriate bus.
-
-Required properties in addition to the generic multiplexer properties:
-
-MDIO multiplexer node:
-- compatible: brcm,mdio-mux-iproc.
-
-Every non-ethernet PHY requires a compatible so that it could be probed based
-on this compatible string.
-
-Optional properties:
-- clocks: phandle of the core clock which drives the mdio block.
-
-Additional information regarding generic multiplexer properties can be found
-at- Documentation/devicetree/bindings/net/mdio-mux.yaml
-
-
-for example:
-               mdio_mux_iproc: mdio-mux@66020000 {
-                       compatible = "brcm,mdio-mux-iproc";
-                       reg = <0x66020000 0x250>;
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-
-                       mdio@0 {
-                               reg = <0x0>;
-                               #address-cells = <1>;
-                               #size-cells = <0>;
-
-                               pci_phy0: pci-phy@0 {
-                                       compatible = "brcm,ns2-pcie-phy";
-                                       reg = <0x0>;
-                                       #phy-cells = <0>;
-                               };
-                       };
-
-                       mdio@7 {
-                               reg = <0x7>;
-                               #address-cells = <1>;
-                               #size-cells = <0>;
-
-                               pci_phy1: pci-phy@0 {
-                                       compatible = "brcm,ns2-pcie-phy";
-                                       reg = <0x0>;
-                                       #phy-cells = <0>;
-                               };
-                       };
-                       mdio@10 {
-                               reg = <0x10>;
-                               #address-cells = <1>;
-                               #size-cells = <0>;
-
-                               gphy0: eth-phy@10 {
-                                       reg = <0x10>;
-                               };
-                       };
-               };
diff --git a/Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.yaml b/Documentation/devicetree/bindings/net/brcm,mdio-mux-iproc.yaml
new file mode 100644 (file)
index 0000000..af96b4f
--- /dev/null
@@ -0,0 +1,80 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/brcm,mdio-mux-iproc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MDIO bus multiplexer found in Broadcom iProc based SoCs.
+
+maintainers:
+  - Florian Fainelli <f.fainelli@gmail.com>
+
+description:
+  This MDIO bus multiplexer defines buses that could be internal as well as
+  external to SoCs and could accept MDIO transaction compatible to C-22 or
+  C-45 Clause. When child bus is selected, one needs to select these two
+  properties as well to generate desired MDIO transaction on appropriate bus.
+
+allOf:
+  - $ref: /schemas/net/mdio-mux.yaml#
+
+properties:
+  compatible:
+    const: brcm,mdio-mux-iproc
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+    description: core clock driving the MDIO block
+
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    mdio_mux_iproc: mdio-mux@66020000 {
+        compatible = "brcm,mdio-mux-iproc";
+        reg = <0x66020000 0x250>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        mdio@0 {
+           reg = <0x0>;
+           #address-cells = <1>;
+           #size-cells = <0>;
+
+           pci_phy0: pci-phy@0 {
+              compatible = "brcm,ns2-pcie-phy";
+              reg = <0x0>;
+              #phy-cells = <0>;
+           };
+        };
+
+        mdio@7 {
+           reg = <0x7>;
+           #address-cells = <1>;
+           #size-cells = <0>;
+
+           pci_phy1: pci-phy@0 {
+              compatible = "brcm,ns2-pcie-phy";
+              reg = <0x0>;
+              #phy-cells = <0>;
+           };
+        };
+
+        mdio@10 {
+           reg = <0x10>;
+           #address-cells = <1>;
+           #size-cells = <0>;
+
+           gphy0: eth-phy@10 {
+              reg = <0x10>;
+           };
+        };
+    };