1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/net/dsa/lantiq,gswip.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: Lantiq GSWIP Ethernet switches 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel VadotallOf: 10*0e8011faSEmmanuel Vadot - $ref: dsa.yaml#/$defs/ethernet-ports 11*0e8011faSEmmanuel Vadot 12*0e8011faSEmmanuel Vadotmaintainers: 13*0e8011faSEmmanuel Vadot - Hauke Mehrtens <hauke@hauke-m.de> 14*0e8011faSEmmanuel Vadot 15*0e8011faSEmmanuel Vadotproperties: 16*0e8011faSEmmanuel Vadot compatible: 17*0e8011faSEmmanuel Vadot enum: 18*0e8011faSEmmanuel Vadot - lantiq,xrx200-gswip 19*0e8011faSEmmanuel Vadot - lantiq,xrx300-gswip 20*0e8011faSEmmanuel Vadot - lantiq,xrx330-gswip 21*0e8011faSEmmanuel Vadot 22*0e8011faSEmmanuel Vadot reg: 23*0e8011faSEmmanuel Vadot minItems: 3 24*0e8011faSEmmanuel Vadot maxItems: 3 25*0e8011faSEmmanuel Vadot 26*0e8011faSEmmanuel Vadot reg-names: 27*0e8011faSEmmanuel Vadot items: 28*0e8011faSEmmanuel Vadot - const: switch 29*0e8011faSEmmanuel Vadot - const: mdio 30*0e8011faSEmmanuel Vadot - const: mii 31*0e8011faSEmmanuel Vadot 32*0e8011faSEmmanuel Vadot mdio: 33*0e8011faSEmmanuel Vadot $ref: /schemas/net/mdio.yaml# 34*0e8011faSEmmanuel Vadot unevaluatedProperties: false 35*0e8011faSEmmanuel Vadot 36*0e8011faSEmmanuel Vadot properties: 37*0e8011faSEmmanuel Vadot compatible: 38*0e8011faSEmmanuel Vadot const: lantiq,xrx200-mdio 39*0e8011faSEmmanuel Vadot 40*0e8011faSEmmanuel Vadot required: 41*0e8011faSEmmanuel Vadot - compatible 42*0e8011faSEmmanuel Vadot 43*0e8011faSEmmanuel Vadot gphy-fw: 44*0e8011faSEmmanuel Vadot type: object 45*0e8011faSEmmanuel Vadot properties: 46*0e8011faSEmmanuel Vadot '#address-cells': 47*0e8011faSEmmanuel Vadot const: 1 48*0e8011faSEmmanuel Vadot 49*0e8011faSEmmanuel Vadot '#size-cells': 50*0e8011faSEmmanuel Vadot const: 0 51*0e8011faSEmmanuel Vadot 52*0e8011faSEmmanuel Vadot compatible: 53*0e8011faSEmmanuel Vadot items: 54*0e8011faSEmmanuel Vadot - enum: 55*0e8011faSEmmanuel Vadot - lantiq,xrx200-gphy-fw 56*0e8011faSEmmanuel Vadot - lantiq,xrx300-gphy-fw 57*0e8011faSEmmanuel Vadot - lantiq,xrx330-gphy-fw 58*0e8011faSEmmanuel Vadot - const: lantiq,gphy-fw 59*0e8011faSEmmanuel Vadot 60*0e8011faSEmmanuel Vadot lantiq,rcu: 61*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 62*0e8011faSEmmanuel Vadot description: phandle to the RCU syscon 63*0e8011faSEmmanuel Vadot 64*0e8011faSEmmanuel Vadot patternProperties: 65*0e8011faSEmmanuel Vadot "^gphy@[0-9a-f]{1,2}$": 66*0e8011faSEmmanuel Vadot type: object 67*0e8011faSEmmanuel Vadot 68*0e8011faSEmmanuel Vadot additionalProperties: false 69*0e8011faSEmmanuel Vadot 70*0e8011faSEmmanuel Vadot properties: 71*0e8011faSEmmanuel Vadot reg: 72*0e8011faSEmmanuel Vadot minimum: 0 73*0e8011faSEmmanuel Vadot maximum: 255 74*0e8011faSEmmanuel Vadot description: 75*0e8011faSEmmanuel Vadot Offset of the GPHY firmware register in the RCU register range 76*0e8011faSEmmanuel Vadot 77*0e8011faSEmmanuel Vadot resets: 78*0e8011faSEmmanuel Vadot items: 79*0e8011faSEmmanuel Vadot - description: GPHY reset line 80*0e8011faSEmmanuel Vadot 81*0e8011faSEmmanuel Vadot reset-names: 82*0e8011faSEmmanuel Vadot items: 83*0e8011faSEmmanuel Vadot - const: gphy 84*0e8011faSEmmanuel Vadot 85*0e8011faSEmmanuel Vadot required: 86*0e8011faSEmmanuel Vadot - reg 87*0e8011faSEmmanuel Vadot 88*0e8011faSEmmanuel Vadot required: 89*0e8011faSEmmanuel Vadot - compatible 90*0e8011faSEmmanuel Vadot - lantiq,rcu 91*0e8011faSEmmanuel Vadot 92*0e8011faSEmmanuel Vadot additionalProperties: false 93*0e8011faSEmmanuel Vadot 94*0e8011faSEmmanuel Vadotrequired: 95*0e8011faSEmmanuel Vadot - compatible 96*0e8011faSEmmanuel Vadot - reg 97*0e8011faSEmmanuel Vadot 98*0e8011faSEmmanuel VadotunevaluatedProperties: false 99*0e8011faSEmmanuel Vadot 100*0e8011faSEmmanuel Vadotexamples: 101*0e8011faSEmmanuel Vadot - | 102*0e8011faSEmmanuel Vadot switch@e108000 { 103*0e8011faSEmmanuel Vadot compatible = "lantiq,xrx200-gswip"; 104*0e8011faSEmmanuel Vadot reg = <0xe108000 0x3100>, /* switch */ 105*0e8011faSEmmanuel Vadot <0xe10b100 0xd8>, /* mdio */ 106*0e8011faSEmmanuel Vadot <0xe10b1d8 0x130>; /* mii */ 107*0e8011faSEmmanuel Vadot dsa,member = <0 0>; 108*0e8011faSEmmanuel Vadot 109*0e8011faSEmmanuel Vadot ports { 110*0e8011faSEmmanuel Vadot #address-cells = <1>; 111*0e8011faSEmmanuel Vadot #size-cells = <0>; 112*0e8011faSEmmanuel Vadot 113*0e8011faSEmmanuel Vadot port@0 { 114*0e8011faSEmmanuel Vadot reg = <0>; 115*0e8011faSEmmanuel Vadot label = "lan3"; 116*0e8011faSEmmanuel Vadot phy-mode = "rgmii"; 117*0e8011faSEmmanuel Vadot phy-handle = <&phy0>; 118*0e8011faSEmmanuel Vadot }; 119*0e8011faSEmmanuel Vadot 120*0e8011faSEmmanuel Vadot port@1 { 121*0e8011faSEmmanuel Vadot reg = <1>; 122*0e8011faSEmmanuel Vadot label = "lan4"; 123*0e8011faSEmmanuel Vadot phy-mode = "rgmii"; 124*0e8011faSEmmanuel Vadot phy-handle = <&phy1>; 125*0e8011faSEmmanuel Vadot }; 126*0e8011faSEmmanuel Vadot 127*0e8011faSEmmanuel Vadot port@2 { 128*0e8011faSEmmanuel Vadot reg = <2>; 129*0e8011faSEmmanuel Vadot label = "lan2"; 130*0e8011faSEmmanuel Vadot phy-mode = "internal"; 131*0e8011faSEmmanuel Vadot phy-handle = <&phy11>; 132*0e8011faSEmmanuel Vadot }; 133*0e8011faSEmmanuel Vadot 134*0e8011faSEmmanuel Vadot port@4 { 135*0e8011faSEmmanuel Vadot reg = <4>; 136*0e8011faSEmmanuel Vadot label = "lan1"; 137*0e8011faSEmmanuel Vadot phy-mode = "internal"; 138*0e8011faSEmmanuel Vadot phy-handle = <&phy13>; 139*0e8011faSEmmanuel Vadot }; 140*0e8011faSEmmanuel Vadot 141*0e8011faSEmmanuel Vadot port@5 { 142*0e8011faSEmmanuel Vadot reg = <5>; 143*0e8011faSEmmanuel Vadot label = "wan"; 144*0e8011faSEmmanuel Vadot phy-mode = "rgmii"; 145*0e8011faSEmmanuel Vadot phy-handle = <&phy5>; 146*0e8011faSEmmanuel Vadot }; 147*0e8011faSEmmanuel Vadot 148*0e8011faSEmmanuel Vadot port@6 { 149*0e8011faSEmmanuel Vadot reg = <0x6>; 150*0e8011faSEmmanuel Vadot phy-mode = "internal"; 151*0e8011faSEmmanuel Vadot ethernet = <ð0>; 152*0e8011faSEmmanuel Vadot 153*0e8011faSEmmanuel Vadot fixed-link { 154*0e8011faSEmmanuel Vadot speed = <1000>; 155*0e8011faSEmmanuel Vadot full-duplex; 156*0e8011faSEmmanuel Vadot }; 157*0e8011faSEmmanuel Vadot }; 158*0e8011faSEmmanuel Vadot }; 159*0e8011faSEmmanuel Vadot 160*0e8011faSEmmanuel Vadot mdio { 161*0e8011faSEmmanuel Vadot #address-cells = <1>; 162*0e8011faSEmmanuel Vadot #size-cells = <0>; 163*0e8011faSEmmanuel Vadot compatible = "lantiq,xrx200-mdio"; 164*0e8011faSEmmanuel Vadot 165*0e8011faSEmmanuel Vadot phy0: ethernet-phy@0 { 166*0e8011faSEmmanuel Vadot reg = <0x0>; 167*0e8011faSEmmanuel Vadot }; 168*0e8011faSEmmanuel Vadot phy1: ethernet-phy@1 { 169*0e8011faSEmmanuel Vadot reg = <0x1>; 170*0e8011faSEmmanuel Vadot }; 171*0e8011faSEmmanuel Vadot phy5: ethernet-phy@5 { 172*0e8011faSEmmanuel Vadot reg = <0x5>; 173*0e8011faSEmmanuel Vadot }; 174*0e8011faSEmmanuel Vadot phy11: ethernet-phy@11 { 175*0e8011faSEmmanuel Vadot reg = <0x11>; 176*0e8011faSEmmanuel Vadot }; 177*0e8011faSEmmanuel Vadot phy13: ethernet-phy@13 { 178*0e8011faSEmmanuel Vadot reg = <0x13>; 179*0e8011faSEmmanuel Vadot }; 180*0e8011faSEmmanuel Vadot }; 181*0e8011faSEmmanuel Vadot 182*0e8011faSEmmanuel Vadot gphy-fw { 183*0e8011faSEmmanuel Vadot #address-cells = <1>; 184*0e8011faSEmmanuel Vadot #size-cells = <0>; 185*0e8011faSEmmanuel Vadot compatible = "lantiq,xrx200-gphy-fw", "lantiq,gphy-fw"; 186*0e8011faSEmmanuel Vadot lantiq,rcu = <&rcu0>; 187*0e8011faSEmmanuel Vadot 188*0e8011faSEmmanuel Vadot gphy@20 { 189*0e8011faSEmmanuel Vadot reg = <0x20>; 190*0e8011faSEmmanuel Vadot 191*0e8011faSEmmanuel Vadot resets = <&reset0 31 30>; 192*0e8011faSEmmanuel Vadot reset-names = "gphy"; 193*0e8011faSEmmanuel Vadot }; 194*0e8011faSEmmanuel Vadot 195*0e8011faSEmmanuel Vadot gphy@68 { 196*0e8011faSEmmanuel Vadot reg = <0x68>; 197*0e8011faSEmmanuel Vadot 198*0e8011faSEmmanuel Vadot resets = <&reset0 29 28>; 199*0e8011faSEmmanuel Vadot reset-names = "gphy"; 200*0e8011faSEmmanuel Vadot }; 201*0e8011faSEmmanuel Vadot }; 202*0e8011faSEmmanuel Vadot }; 203