194 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/net/dsa/microchip,lan937x.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: LAN937x Ethernet Switch Series8 9maintainers:10 - UNGLinuxDriver@microchip.com11 12allOf:13 - $ref: dsa.yaml#/$defs/ethernet-ports14 15properties:16 compatible:17 enum:18 - microchip,lan937019 - microchip,lan937120 - microchip,lan937221 - microchip,lan937322 - microchip,lan937423 24 reg:25 maxItems: 126 27 spi-max-frequency:28 maximum: 5000000029 30 reset-gpios:31 description: Optional gpio specifier for a reset line32 maxItems: 133 34 mdio:35 $ref: /schemas/net/mdio.yaml#36 unevaluatedProperties: false37 38patternProperties:39 "^(ethernet-)?ports$":40 additionalProperties: true41 patternProperties:42 "^(ethernet-)?port@[0-7]$":43 allOf:44 - if:45 properties:46 phy-mode:47 contains:48 enum:49 - rgmii50 - rgmii-id51 - rgmii-txid52 - rgmii-rxid53 then:54 properties:55 rx-internal-delay-ps:56 enum: [0, 2000]57 default: 058 tx-internal-delay-ps:59 enum: [0, 2000]60 default: 061 62required:63 - compatible64 - reg65 66unevaluatedProperties: false67 68examples:69 - |70 #include <dt-bindings/gpio/gpio.h>71 72 macb0 {73 #address-cells = <1>;74 #size-cells = <0>;75 76 fixed-link {77 speed = <1000>;78 full-duplex;79 };80 };81 82 spi {83 #address-cells = <1>;84 #size-cells = <0>;85 86 lan9374: switch@0 {87 compatible = "microchip,lan9374";88 reg = <0>;89 spi-max-frequency = <44000000>;90 91 ethernet-ports {92 #address-cells = <1>;93 #size-cells = <0>;94 95 port@0 {96 reg = <0>;97 label = "lan1";98 phy-mode = "internal";99 phy-handle = <&t1phy0>;100 };101 102 port@1 {103 reg = <1>;104 label = "lan2";105 phy-mode = "internal";106 phy-handle = <&t1phy1>;107 };108 109 port@2 {110 reg = <2>;111 label = "lan4";112 phy-mode = "internal";113 phy-handle = <&t1phy2>;114 };115 116 port@3 {117 reg = <3>;118 label = "lan6";119 phy-mode = "internal";120 phy-handle = <&t1phy3>;121 };122 123 port@4 {124 reg = <4>;125 phy-mode = "rgmii";126 tx-internal-delay-ps = <2000>;127 rx-internal-delay-ps = <2000>;128 ethernet = <&macb0>;129 130 fixed-link {131 speed = <1000>;132 full-duplex;133 };134 };135 136 port@5 {137 reg = <5>;138 label = "lan7";139 phy-mode = "rgmii";140 tx-internal-delay-ps = <2000>;141 rx-internal-delay-ps = <2000>;142 143 fixed-link {144 speed = <1000>;145 full-duplex;146 };147 };148 149 port@6 {150 reg = <6>;151 label = "lan5";152 phy-mode = "internal";153 phy-handle = <&t1phy6>;154 };155 156 port@7 {157 reg = <7>;158 label = "lan3";159 phy-mode = "internal";160 phy-handle = <&t1phy7>;161 };162 };163 164 mdio {165 #address-cells = <1>;166 #size-cells = <0>;167 168 t1phy0: ethernet-phy@0{169 reg = <0x0>;170 };171 172 t1phy1: ethernet-phy@1{173 reg = <0x1>;174 };175 176 t1phy2: ethernet-phy@2{177 reg = <0x2>;178 };179 180 t1phy3: ethernet-phy@3{181 reg = <0x3>;182 };183 184 t1phy6: ethernet-phy@6{185 reg = <0x6>;186 };187 188 t1phy7: ethernet-phy@7{189 reg = <0x7>;190 };191 };192 };193 };194