diff mbox series

[net-next,v6,3/6] dt-bindings: mfd: Add MDIO interface to rtl9301-switch

Message ID 20250204030249.1965444-4-chris.packham@alliedtelesis.co.nz (mailing list archive)
State New
Headers show
Series RTL9300 MDIO driver | expand

Commit Message

Chris Packham Feb. 4, 2025, 3:02 a.m. UTC
The MDIO controller is part of the switch on the RTL9300 family of
devices. Add a $ref to the mfd binding for these devices.

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
---

Notes:
    This patch is dependent on "dt-bindings: net: Add Realtek MDIO
    controller" which adds the realtek,rtl9301-mdio.yaml binding.
    
    Changes in v6:
    - Remove realtek,port property
    - Remove leftover mdio-controller node.
    - Fix some style issues.
    - Fuller example including the port to phy-handle mapping
    Changes in v5:
    - Note dependency on realtek,rtl9301-mdio.yaml patch
    - Add back reg property to the mdio-controller node.
    Changes in v4:
    - There is a single MDIO controller that has MDIO buses as children
    Changes in v3:
    - None
    Changes in v2:
    - None

 .../bindings/mfd/realtek,rtl9301-switch.yaml  | 31 +++++++++++++++++++
 1 file changed, 31 insertions(+)
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mfd/realtek,rtl9301-switch.yaml b/Documentation/devicetree/bindings/mfd/realtek,rtl9301-switch.yaml
index cb54abda5e6a..587fc3cf2524 100644
--- a/Documentation/devicetree/bindings/mfd/realtek,rtl9301-switch.yaml
+++ b/Documentation/devicetree/bindings/mfd/realtek,rtl9301-switch.yaml
@@ -43,6 +43,9 @@  patternProperties:
   'i2c@[0-9a-f]+$':
     $ref: /schemas/i2c/realtek,rtl9301-i2c.yaml#
 
+  'mdio-controller@[0-9a-f]+$':
+    $ref: /schemas/net/realtek,rtl9301-mdio.yaml#
+
 required:
   - compatible
   - reg
@@ -113,15 +116,43 @@  examples:
         };
       };
 
+      mdio-controller@ca00 {
+        compatible = "realtek,rtl9301-mdio";
+        reg = <0xca00 0x200>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        mdio-bus@0 {
+          reg = <0>;
+          #address-cells = <1>;
+          #size-cells = <0>;
+
+          phy1: ethernet-phy@0 {
+            reg = <0>;
+          };
+        };
+        mdio-bus@1 {
+          reg = <1>;
+          #address-cells = <1>;
+          #size-cells = <0>;
+
+          phy2: ethernet-phy@0 {
+            reg = <0>;
+          };
+        };
+      };
+
       ethernet-ports {
         #address-cells = <1>;
         #size-cells = <0>;
 
         port@0 {
           reg = <0>;
+          phy-handle = <&phy1>;
         };
         port@1 {
           reg = <1>;
+          phy-handle = <&phy2>;
         };
       };
     };