Distributed Switch Architecture Device Tree Bindings
 ----------------------------------------------------
 
-Switches are true Linux devices and can be probed by any means. Once
-probed, they register to the DSA framework, passing a node
-pointer. This node is expected to fulfil the following binding, and
-may contain additional properties as required by the device it is
-embedded within.
-
-Required properties:
-
-- ports                : A container for child nodes representing switch ports.
-
-Optional properties:
-
-- dsa,member   : A two element list indicates which DSA cluster, and position
-                 within the cluster a switch takes. <0 0> is cluster 0,
-                 switch 0. <0 1> is cluster 0, switch 1. <1 0> is cluster 1,
-                 switch 0. A switch not part of any cluster (single device
-                 hanging off a CPU port) must not specify this property
-
-The ports container has the following properties
-
-Required properties:
-
-- #address-cells       : Must be 1
-- #size-cells          : Must be 0
-
-Each port children node must have the following mandatory properties:
-- reg                  : Describes the port address in the switch
-
-An uplink/downlink port between switches in the cluster has the following
-mandatory property:
-
-- link                 : Should be a list of phandles to other switch's DSA
-                         port. This port is used as the outgoing port
-                         towards the phandle ports. The full routing
-                         information must be given, not just the one hop
-                         routes to neighbouring switches.
-
-A CPU port has the following mandatory property:
-
-- ethernet             : Should be a phandle to a valid Ethernet device node.
-                          This host device is what the switch port is
-                         connected to.
-
-A user port has the following optional property:
-
-- label                        : Describes the label associated with this port, which
-                          will become the netdev name.
-
-Port child nodes may also contain the following optional standardised
-properties, described in binding documents:
-
-- phy-handle           : Phandle to a PHY on an MDIO bus. See
-                         Documentation/devicetree/bindings/net/ethernet.txt
-                         for details.
-
-- phy-mode             : See
-                         Documentation/devicetree/bindings/net/ethernet.txt
-                         for details.
-
-- fixed-link           : Fixed-link subnode describing a link to a non-MDIO
-                         managed entity. See
-                         Documentation/devicetree/bindings/net/fixed-link.txt
-                         for details.
-
-The MAC address will be determined using the optional properties
-defined in ethernet.txt.
-
-Example
-
-The following example shows three switches on three MDIO busses,
-linked into one DSA cluster.
-
-&mdio1 {
-       #address-cells = <1>;
-       #size-cells = <0>;
-
-       switch0: switch0@0 {
-               compatible = "marvell,mv88e6085";
-               reg = <0>;
-
-               dsa,member = <0 0>;
-
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-                       port@0 {
-                               reg = <0>;
-                               label = "lan0";
-                       };
-
-                       port@1 {
-                               reg = <1>;
-                               label = "lan1";
-                               local-mac-address = [00 00 00 00 00 00];
-                       };
-
-                       port@2 {
-                               reg = <2>;
-                               label = "lan2";
-                       };
-
-                       switch0port5: port@5 {
-                               reg = <5>;
-                               phy-mode = "rgmii-txid";
-                               link = <&switch1port6
-                                       &switch2port9>;
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                               };
-                       };
-
-                       port@6 {
-                               reg = <6>;
-                               ethernet = <&fec1>;
-                               fixed-link {
-                                       speed = <100>;
-                                       full-duplex;
-                               };
-                       };
-               };
-       };
-};
-
-&mdio2 {
-       #address-cells = <1>;
-       #size-cells = <0>;
-
-       switch1: switch1@0 {
-               compatible = "marvell,mv88e6085";
-               reg = <0>;
-
-               dsa,member = <0 1>;
-
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-                       port@0 {
-                               reg = <0>;
-                               label = "lan3";
-                               phy-handle = <&switch1phy0>;
-                       };
-
-                       port@1 {
-                               reg = <1>;
-                               label = "lan4";
-                               phy-handle = <&switch1phy1>;
-                       };
-
-                       port@2 {
-                               reg = <2>;
-                               label = "lan5";
-                               phy-handle = <&switch1phy2>;
-                       };
-
-                       switch1port5: port@5 {
-                               reg = <5>;
-                               link = <&switch2port9>;
-                               phy-mode = "rgmii-txid";
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                               };
-                       };
-
-                       switch1port6: port@6 {
-                               reg = <6>;
-                               phy-mode = "rgmii-txid";
-                               link = <&switch0port5>;
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                               };
-                       };
-               };
-               mdio-bus {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-                       switch1phy0: switch1phy0@0 {
-                               reg = <0>;
-                       };
-                       switch1phy1: switch1phy0@1 {
-                               reg = <1>;
-                       };
-                       switch1phy2: switch1phy0@2 {
-                               reg = <2>;
-                       };
-               };
-        };
-};
-
-&mdio4 {
-       #address-cells = <1>;
-       #size-cells = <0>;
-
-       switch2: switch2@0 {
-               compatible = "marvell,mv88e6085";
-               reg = <0>;
-
-               dsa,member = <0 2>;
-
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-                       port@0 {
-                               reg = <0>;
-                               label = "lan6";
-                       };
-
-                       port@1 {
-                               reg = <1>;
-                               label = "lan7";
-                       };
-
-                       port@2 {
-                               reg = <2>;
-                               label = "lan8";
-                       };
-
-                       port@3 {
-                               reg = <3>;
-                               label = "optical3";
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                                       link-gpios = <&gpio6 2
-                                             GPIO_ACTIVE_HIGH>;
-                               };
-                       };
-
-                       port@4 {
-                               reg = <4>;
-                               label = "optical4";
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                                       link-gpios = <&gpio6 3
-                                             GPIO_ACTIVE_HIGH>;
-                               };
-                       };
-
-                       switch2port9: port@9 {
-                               reg = <9>;
-                               phy-mode = "rgmii-txid";
-                               link = <&switch1port5
-                                       &switch0port5>;
-                               fixed-link {
-                                       speed = <1000>;
-                                       full-duplex;
-                               };
-                       };
-               };
-       };
-};
+See Documentation/devicetree/bindings/net/dsa/dsa.yaml for the documenation.