12554fe8fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 22554fe8fSEmmanuel Vadot%YAML 1.2 32554fe8fSEmmanuel Vadot--- 42554fe8fSEmmanuel Vadot$id: http://devicetree.org/schemas/net/qca,ar71xx.yaml# 52554fe8fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 62554fe8fSEmmanuel Vadot 72554fe8fSEmmanuel Vadottitle: QCA AR71XX MAC 82554fe8fSEmmanuel Vadot 92554fe8fSEmmanuel VadotallOf: 102554fe8fSEmmanuel Vadot - $ref: ethernet-controller.yaml# 112554fe8fSEmmanuel Vadot 122554fe8fSEmmanuel Vadotmaintainers: 132554fe8fSEmmanuel Vadot - Oleksij Rempel <o.rempel@pengutronix.de> 142554fe8fSEmmanuel Vadot 152554fe8fSEmmanuel Vadotproperties: 162554fe8fSEmmanuel Vadot compatible: 172554fe8fSEmmanuel Vadot oneOf: 182554fe8fSEmmanuel Vadot - items: 192554fe8fSEmmanuel Vadot - enum: 202554fe8fSEmmanuel Vadot - qca,ar7100-eth # Atheros AR7100 212554fe8fSEmmanuel Vadot - qca,ar7240-eth # Atheros AR7240 222554fe8fSEmmanuel Vadot - qca,ar7241-eth # Atheros AR7241 232554fe8fSEmmanuel Vadot - qca,ar7242-eth # Atheros AR7242 242554fe8fSEmmanuel Vadot - qca,ar9130-eth # Atheros AR9130 252554fe8fSEmmanuel Vadot - qca,ar9330-eth # Atheros AR9330 262554fe8fSEmmanuel Vadot - qca,ar9340-eth # Atheros AR9340 272554fe8fSEmmanuel Vadot - qca,qca9530-eth # Qualcomm Atheros QCA9530 282554fe8fSEmmanuel Vadot - qca,qca9550-eth # Qualcomm Atheros QCA9550 292554fe8fSEmmanuel Vadot - qca,qca9560-eth # Qualcomm Atheros QCA9560 302554fe8fSEmmanuel Vadot 312554fe8fSEmmanuel Vadot reg: 322554fe8fSEmmanuel Vadot maxItems: 1 332554fe8fSEmmanuel Vadot 342554fe8fSEmmanuel Vadot interrupts: 352554fe8fSEmmanuel Vadot maxItems: 1 362554fe8fSEmmanuel Vadot 372554fe8fSEmmanuel Vadot clocks: 382554fe8fSEmmanuel Vadot items: 392554fe8fSEmmanuel Vadot - description: MAC main clock 402554fe8fSEmmanuel Vadot - description: MDIO clock 412554fe8fSEmmanuel Vadot 422554fe8fSEmmanuel Vadot clock-names: 432554fe8fSEmmanuel Vadot items: 442554fe8fSEmmanuel Vadot - const: eth 452554fe8fSEmmanuel Vadot - const: mdio 462554fe8fSEmmanuel Vadot 472554fe8fSEmmanuel Vadot resets: 482554fe8fSEmmanuel Vadot items: 492554fe8fSEmmanuel Vadot - description: MAC reset 502554fe8fSEmmanuel Vadot - description: MDIO reset 512554fe8fSEmmanuel Vadot 522554fe8fSEmmanuel Vadot reset-names: 532554fe8fSEmmanuel Vadot items: 542554fe8fSEmmanuel Vadot - const: mac 552554fe8fSEmmanuel Vadot - const: mdio 562554fe8fSEmmanuel Vadot 57b7d8b563SEmmanuel Vadot mdio: 58b7d8b563SEmmanuel Vadot $ref: mdio.yaml# 59b7d8b563SEmmanuel Vadot unevaluatedProperties: false 60b7d8b563SEmmanuel Vadot 612554fe8fSEmmanuel Vadotrequired: 622554fe8fSEmmanuel Vadot - compatible 632554fe8fSEmmanuel Vadot - reg 642554fe8fSEmmanuel Vadot - interrupts 652554fe8fSEmmanuel Vadot - phy-mode 662554fe8fSEmmanuel Vadot - clocks 672554fe8fSEmmanuel Vadot - clock-names 682554fe8fSEmmanuel Vadot - resets 692554fe8fSEmmanuel Vadot - reset-names 702554fe8fSEmmanuel Vadot 71e7ffa3b5SEmmanuel VadotunevaluatedProperties: false 72e7ffa3b5SEmmanuel Vadot 732554fe8fSEmmanuel Vadotexamples: 742554fe8fSEmmanuel Vadot # Lager board 752554fe8fSEmmanuel Vadot - | 762554fe8fSEmmanuel Vadot eth0: ethernet@19000000 { 772554fe8fSEmmanuel Vadot compatible = "qca,ar9330-eth"; 782554fe8fSEmmanuel Vadot reg = <0x19000000 0x200>; 792554fe8fSEmmanuel Vadot interrupts = <4>; 802554fe8fSEmmanuel Vadot resets = <&rst 9>, <&rst 22>; 812554fe8fSEmmanuel Vadot reset-names = "mac", "mdio"; 822554fe8fSEmmanuel Vadot clocks = <&pll 1>, <&pll 2>; 832554fe8fSEmmanuel Vadot clock-names = "eth", "mdio"; 842554fe8fSEmmanuel Vadot phy-mode = "mii"; 852554fe8fSEmmanuel Vadot phy-handle = <&phy_port4>; 862554fe8fSEmmanuel Vadot }; 872554fe8fSEmmanuel Vadot 882554fe8fSEmmanuel Vadot eth1: ethernet@1a000000 { 892554fe8fSEmmanuel Vadot compatible = "qca,ar9330-eth"; 902554fe8fSEmmanuel Vadot reg = <0x1a000000 0x200>; 912554fe8fSEmmanuel Vadot interrupts = <5>; 922554fe8fSEmmanuel Vadot resets = <&rst 13>, <&rst 23>; 932554fe8fSEmmanuel Vadot reset-names = "mac", "mdio"; 942554fe8fSEmmanuel Vadot clocks = <&pll 1>, <&pll 2>; 952554fe8fSEmmanuel Vadot clock-names = "eth", "mdio"; 962554fe8fSEmmanuel Vadot 972554fe8fSEmmanuel Vadot phy-mode = "gmii"; 982554fe8fSEmmanuel Vadot 992554fe8fSEmmanuel Vadot fixed-link { 1002554fe8fSEmmanuel Vadot speed = <1000>; 1012554fe8fSEmmanuel Vadot full-duplex; 1022554fe8fSEmmanuel Vadot }; 1032554fe8fSEmmanuel Vadot 1042554fe8fSEmmanuel Vadot mdio { 1052554fe8fSEmmanuel Vadot #address-cells = <1>; 1062554fe8fSEmmanuel Vadot #size-cells = <0>; 1072554fe8fSEmmanuel Vadot 1082554fe8fSEmmanuel Vadot switch10: switch@10 { 1092554fe8fSEmmanuel Vadot compatible = "qca,ar9331-switch"; 1102554fe8fSEmmanuel Vadot reg = <0x10>; 1112554fe8fSEmmanuel Vadot resets = <&rst 8>; 1122554fe8fSEmmanuel Vadot reset-names = "switch"; 1132554fe8fSEmmanuel Vadot 1142554fe8fSEmmanuel Vadot interrupt-parent = <&miscintc>; 1152554fe8fSEmmanuel Vadot interrupts = <12>; 1162554fe8fSEmmanuel Vadot 1172554fe8fSEmmanuel Vadot interrupt-controller; 1182554fe8fSEmmanuel Vadot #interrupt-cells = <1>; 1192554fe8fSEmmanuel Vadot 1202554fe8fSEmmanuel Vadot ports { 1212554fe8fSEmmanuel Vadot #address-cells = <1>; 1222554fe8fSEmmanuel Vadot #size-cells = <0>; 1232554fe8fSEmmanuel Vadot 1242554fe8fSEmmanuel Vadot switch_port0: port@0 { 1252554fe8fSEmmanuel Vadot reg = <0x0>; 1262554fe8fSEmmanuel Vadot ethernet = <ð1>; 1272554fe8fSEmmanuel Vadot 1282554fe8fSEmmanuel Vadot phy-mode = "gmii"; 1292554fe8fSEmmanuel Vadot 1302554fe8fSEmmanuel Vadot fixed-link { 1312554fe8fSEmmanuel Vadot speed = <1000>; 1322554fe8fSEmmanuel Vadot full-duplex; 1332554fe8fSEmmanuel Vadot }; 1342554fe8fSEmmanuel Vadot }; 1352554fe8fSEmmanuel Vadot 1362554fe8fSEmmanuel Vadot switch_port1: port@1 { 1372554fe8fSEmmanuel Vadot reg = <0x1>; 1382554fe8fSEmmanuel Vadot phy-handle = <&phy_port0>; 1392554fe8fSEmmanuel Vadot phy-mode = "internal"; 1402554fe8fSEmmanuel Vadot }; 1412554fe8fSEmmanuel Vadot 1422554fe8fSEmmanuel Vadot switch_port2: port@2 { 1432554fe8fSEmmanuel Vadot reg = <0x2>; 1442554fe8fSEmmanuel Vadot phy-handle = <&phy_port1>; 1452554fe8fSEmmanuel Vadot phy-mode = "internal"; 1462554fe8fSEmmanuel Vadot }; 1472554fe8fSEmmanuel Vadot 1482554fe8fSEmmanuel Vadot switch_port3: port@3 { 1492554fe8fSEmmanuel Vadot reg = <0x3>; 1502554fe8fSEmmanuel Vadot phy-handle = <&phy_port2>; 1512554fe8fSEmmanuel Vadot phy-mode = "internal"; 1522554fe8fSEmmanuel Vadot }; 1532554fe8fSEmmanuel Vadot 1542554fe8fSEmmanuel Vadot switch_port4: port@4 { 1552554fe8fSEmmanuel Vadot reg = <0x4>; 1562554fe8fSEmmanuel Vadot phy-handle = <&phy_port3>; 1572554fe8fSEmmanuel Vadot phy-mode = "internal"; 1582554fe8fSEmmanuel Vadot }; 1592554fe8fSEmmanuel Vadot }; 1602554fe8fSEmmanuel Vadot 1612554fe8fSEmmanuel Vadot mdio { 1622554fe8fSEmmanuel Vadot #address-cells = <1>; 1632554fe8fSEmmanuel Vadot #size-cells = <0>; 1642554fe8fSEmmanuel Vadot 1652554fe8fSEmmanuel Vadot interrupt-parent = <&switch10>; 1662554fe8fSEmmanuel Vadot 1671769b8f3SEmmanuel Vadot phy_port0: ethernet-phy@0 { 1682554fe8fSEmmanuel Vadot reg = <0x0>; 1692554fe8fSEmmanuel Vadot interrupts = <0>; 1702554fe8fSEmmanuel Vadot }; 1712554fe8fSEmmanuel Vadot 1721769b8f3SEmmanuel Vadot phy_port1: ethernet-phy@1 { 1732554fe8fSEmmanuel Vadot reg = <0x1>; 1742554fe8fSEmmanuel Vadot interrupts = <0>; 1752554fe8fSEmmanuel Vadot }; 1762554fe8fSEmmanuel Vadot 1771769b8f3SEmmanuel Vadot phy_port2: ethernet-phy@2 { 1782554fe8fSEmmanuel Vadot reg = <0x2>; 1792554fe8fSEmmanuel Vadot interrupts = <0>; 1802554fe8fSEmmanuel Vadot }; 1812554fe8fSEmmanuel Vadot 1821769b8f3SEmmanuel Vadot phy_port3: ethernet-phy@3 { 1832554fe8fSEmmanuel Vadot reg = <0x3>; 1842554fe8fSEmmanuel Vadot interrupts = <0>; 1852554fe8fSEmmanuel Vadot }; 1862554fe8fSEmmanuel Vadot 1871769b8f3SEmmanuel Vadot phy_port4: ethernet-phy@4 { 1882554fe8fSEmmanuel Vadot reg = <0x4>; 1892554fe8fSEmmanuel Vadot interrupts = <0>; 1902554fe8fSEmmanuel Vadot }; 1912554fe8fSEmmanuel Vadot }; 1922554fe8fSEmmanuel Vadot }; 1932554fe8fSEmmanuel Vadot }; 1942554fe8fSEmmanuel Vadot }; 195