1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Device Tree Bindings for Cisco Meraki MX65 series (Alamo). 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com> 6*724ba675SRob Herring */ 7*724ba675SRob Herring 8*724ba675SRob Herring#include "bcm958625-meraki-mx6x-common.dtsi" 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring keys { 12*724ba675SRob Herring compatible = "gpio-keys-polled"; 13*724ba675SRob Herring autorepeat; 14*724ba675SRob Herring poll-interval = <20>; 15*724ba675SRob Herring 16*724ba675SRob Herring button-reset { 17*724ba675SRob Herring label = "reset"; 18*724ba675SRob Herring linux,code = <KEY_RESTART>; 19*724ba675SRob Herring gpios = <&gpioa 8 GPIO_ACTIVE_LOW>; 20*724ba675SRob Herring }; 21*724ba675SRob Herring }; 22*724ba675SRob Herring 23*724ba675SRob Herring leds { 24*724ba675SRob Herring compatible = "gpio-leds"; 25*724ba675SRob Herring 26*724ba675SRob Herring led-0 { 27*724ba675SRob Herring /* green:wan1-left */ 28*724ba675SRob Herring function = LED_FUNCTION_ACTIVITY; 29*724ba675SRob Herring function-enumerator = <0>; 30*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 31*724ba675SRob Herring gpios = <&gpioa 25 GPIO_ACTIVE_LOW>; 32*724ba675SRob Herring }; 33*724ba675SRob Herring 34*724ba675SRob Herring led-1 { 35*724ba675SRob Herring /* green:wan1-right */ 36*724ba675SRob Herring function = LED_FUNCTION_ACTIVITY; 37*724ba675SRob Herring function-enumerator = <1>; 38*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 39*724ba675SRob Herring gpios = <&gpioa 24 GPIO_ACTIVE_LOW>; 40*724ba675SRob Herring }; 41*724ba675SRob Herring 42*724ba675SRob Herring led-2 { 43*724ba675SRob Herring /* green:wan2-left */ 44*724ba675SRob Herring function = LED_FUNCTION_ACTIVITY; 45*724ba675SRob Herring function-enumerator = <2>; 46*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 47*724ba675SRob Herring gpios = <&gpioa 27 GPIO_ACTIVE_LOW>; 48*724ba675SRob Herring }; 49*724ba675SRob Herring 50*724ba675SRob Herring led-3 { 51*724ba675SRob Herring /* green:wan2-right */ 52*724ba675SRob Herring function = LED_FUNCTION_ACTIVITY; 53*724ba675SRob Herring function-enumerator = <3>; 54*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 55*724ba675SRob Herring gpios = <&gpioa 26 GPIO_ACTIVE_LOW>; 56*724ba675SRob Herring }; 57*724ba675SRob Herring 58*724ba675SRob Herring led-4 { 59*724ba675SRob Herring /* amber:power */ 60*724ba675SRob Herring function = LED_FUNCTION_FAULT; 61*724ba675SRob Herring color = <LED_COLOR_ID_AMBER>; 62*724ba675SRob Herring gpios = <&gpioa 3 GPIO_ACTIVE_HIGH>; 63*724ba675SRob Herring }; 64*724ba675SRob Herring 65*724ba675SRob Herring led-5 { 66*724ba675SRob Herring /* white:status */ 67*724ba675SRob Herring function = LED_FUNCTION_STATUS; 68*724ba675SRob Herring color = <LED_COLOR_ID_WHITE>; 69*724ba675SRob Herring gpios = <&gpioa 31 GPIO_ACTIVE_HIGH>; 70*724ba675SRob Herring }; 71*724ba675SRob Herring }; 72*724ba675SRob Herring}; 73*724ba675SRob Herring 74*724ba675SRob Herring&axi { 75*724ba675SRob Herring mdio-mux@3f1c0 { 76*724ba675SRob Herring compatible = "mdio-mux-mmioreg", "mdio-mux"; 77*724ba675SRob Herring reg = <0x3f1c0 0x4>; 78*724ba675SRob Herring mux-mask = <0x2000>; 79*724ba675SRob Herring mdio-parent-bus = <&mdio_ext>; 80*724ba675SRob Herring #address-cells = <1>; 81*724ba675SRob Herring #size-cells = <0>; 82*724ba675SRob Herring 83*724ba675SRob Herring mdio@0 { 84*724ba675SRob Herring reg = <0x0>; 85*724ba675SRob Herring #address-cells = <1>; 86*724ba675SRob Herring #size-cells = <0>; 87*724ba675SRob Herring 88*724ba675SRob Herring phy_port6: phy@0 { 89*724ba675SRob Herring reg = <0>; 90*724ba675SRob Herring }; 91*724ba675SRob Herring 92*724ba675SRob Herring phy_port7: phy@1 { 93*724ba675SRob Herring reg = <1>; 94*724ba675SRob Herring }; 95*724ba675SRob Herring 96*724ba675SRob Herring phy_port8: phy@2 { 97*724ba675SRob Herring reg = <2>; 98*724ba675SRob Herring }; 99*724ba675SRob Herring 100*724ba675SRob Herring phy_port9: phy@3 { 101*724ba675SRob Herring reg = <3>; 102*724ba675SRob Herring }; 103*724ba675SRob Herring 104*724ba675SRob Herring phy_port10: phy@4 { 105*724ba675SRob Herring reg = <4>; 106*724ba675SRob Herring }; 107*724ba675SRob Herring 108*724ba675SRob Herring switch@10 { 109*724ba675SRob Herring compatible = "qca,qca8337"; 110*724ba675SRob Herring reg = <0x10>; 111*724ba675SRob Herring dsa,member = <1 0>; 112*724ba675SRob Herring 113*724ba675SRob Herring ports { 114*724ba675SRob Herring #address-cells = <1>; 115*724ba675SRob Herring #size-cells = <0>; 116*724ba675SRob Herring port@0 { 117*724ba675SRob Herring reg = <0>; 118*724ba675SRob Herring ethernet = <&sgmii1>; 119*724ba675SRob Herring phy-mode = "sgmii"; 120*724ba675SRob Herring qca,sgmii-enable-pll; 121*724ba675SRob Herring qca,sgmii-txclk-falling-edge; 122*724ba675SRob Herring fixed-link { 123*724ba675SRob Herring speed = <1000>; 124*724ba675SRob Herring full-duplex; 125*724ba675SRob Herring }; 126*724ba675SRob Herring }; 127*724ba675SRob Herring 128*724ba675SRob Herring port@1 { 129*724ba675SRob Herring reg = <1>; 130*724ba675SRob Herring label = "lan8"; 131*724ba675SRob Herring phy-handle = <&phy_port6>; 132*724ba675SRob Herring }; 133*724ba675SRob Herring 134*724ba675SRob Herring port@2 { 135*724ba675SRob Herring reg = <2>; 136*724ba675SRob Herring label = "lan9"; 137*724ba675SRob Herring phy-handle = <&phy_port7>; 138*724ba675SRob Herring }; 139*724ba675SRob Herring 140*724ba675SRob Herring port@3 { 141*724ba675SRob Herring reg = <3>; 142*724ba675SRob Herring label = "lan10"; 143*724ba675SRob Herring phy-handle = <&phy_port8>; 144*724ba675SRob Herring }; 145*724ba675SRob Herring 146*724ba675SRob Herring port@4 { 147*724ba675SRob Herring reg = <4>; 148*724ba675SRob Herring label = "lan11"; 149*724ba675SRob Herring phy-handle = <&phy_port9>; 150*724ba675SRob Herring }; 151*724ba675SRob Herring 152*724ba675SRob Herring port@5 { 153*724ba675SRob Herring reg = <5>; 154*724ba675SRob Herring label = "lan12"; 155*724ba675SRob Herring phy-handle = <&phy_port10>; 156*724ba675SRob Herring }; 157*724ba675SRob Herring }; 158*724ba675SRob Herring }; 159*724ba675SRob Herring }; 160*724ba675SRob Herring 161*724ba675SRob Herring mdio-mii@2000 { 162*724ba675SRob Herring reg = <0x2000>; 163*724ba675SRob Herring #address-cells = <1>; 164*724ba675SRob Herring #size-cells = <0>; 165*724ba675SRob Herring 166*724ba675SRob Herring phy_port1: phy@0 { 167*724ba675SRob Herring reg = <0>; 168*724ba675SRob Herring }; 169*724ba675SRob Herring 170*724ba675SRob Herring phy_port2: phy@1 { 171*724ba675SRob Herring reg = <1>; 172*724ba675SRob Herring }; 173*724ba675SRob Herring 174*724ba675SRob Herring phy_port3: phy@2 { 175*724ba675SRob Herring reg = <2>; 176*724ba675SRob Herring }; 177*724ba675SRob Herring 178*724ba675SRob Herring phy_port4: phy@3 { 179*724ba675SRob Herring reg = <3>; 180*724ba675SRob Herring }; 181*724ba675SRob Herring 182*724ba675SRob Herring phy_port5: phy@4 { 183*724ba675SRob Herring reg = <4>; 184*724ba675SRob Herring }; 185*724ba675SRob Herring 186*724ba675SRob Herring switch@10 { 187*724ba675SRob Herring compatible = "qca,qca8337"; 188*724ba675SRob Herring reg = <0x10>; 189*724ba675SRob Herring dsa,member = <2 0>; 190*724ba675SRob Herring 191*724ba675SRob Herring ports { 192*724ba675SRob Herring #address-cells = <1>; 193*724ba675SRob Herring #size-cells = <0>; 194*724ba675SRob Herring port@0 { 195*724ba675SRob Herring reg = <0>; 196*724ba675SRob Herring ethernet = <&sgmii0>; 197*724ba675SRob Herring phy-mode = "sgmii"; 198*724ba675SRob Herring qca,sgmii-enable-pll; 199*724ba675SRob Herring qca,sgmii-txclk-falling-edge; 200*724ba675SRob Herring fixed-link { 201*724ba675SRob Herring speed = <1000>; 202*724ba675SRob Herring full-duplex; 203*724ba675SRob Herring }; 204*724ba675SRob Herring }; 205*724ba675SRob Herring 206*724ba675SRob Herring port@1 { 207*724ba675SRob Herring reg = <1>; 208*724ba675SRob Herring label = "lan3"; 209*724ba675SRob Herring phy-handle = <&phy_port1>; 210*724ba675SRob Herring }; 211*724ba675SRob Herring 212*724ba675SRob Herring port@2 { 213*724ba675SRob Herring reg = <2>; 214*724ba675SRob Herring label = "lan4"; 215*724ba675SRob Herring phy-handle = <&phy_port2>; 216*724ba675SRob Herring }; 217*724ba675SRob Herring 218*724ba675SRob Herring port@3 { 219*724ba675SRob Herring reg = <3>; 220*724ba675SRob Herring label = "lan5"; 221*724ba675SRob Herring phy-handle = <&phy_port3>; 222*724ba675SRob Herring }; 223*724ba675SRob Herring 224*724ba675SRob Herring port@4 { 225*724ba675SRob Herring reg = <4>; 226*724ba675SRob Herring label = "lan6"; 227*724ba675SRob Herring phy-handle = <&phy_port4>; 228*724ba675SRob Herring }; 229*724ba675SRob Herring 230*724ba675SRob Herring port@5 { 231*724ba675SRob Herring reg = <5>; 232*724ba675SRob Herring label = "lan7"; 233*724ba675SRob Herring phy-handle = <&phy_port5>; 234*724ba675SRob Herring }; 235*724ba675SRob Herring }; 236*724ba675SRob Herring }; 237*724ba675SRob Herring }; 238*724ba675SRob Herring }; 239*724ba675SRob Herring}; 240*724ba675SRob Herring 241*724ba675SRob Herring&srab { 242*724ba675SRob Herring compatible = "brcm,bcm58625-srab", "brcm,nsp-srab"; 243*724ba675SRob Herring status = "okay"; 244*724ba675SRob Herring dsa,member = <0 0>; 245*724ba675SRob Herring 246*724ba675SRob Herring ports { 247*724ba675SRob Herring port@0 { 248*724ba675SRob Herring label = "wan1"; 249*724ba675SRob Herring reg = <0>; 250*724ba675SRob Herring }; 251*724ba675SRob Herring 252*724ba675SRob Herring port@1 { 253*724ba675SRob Herring label = "wan2"; 254*724ba675SRob Herring reg = <1>; 255*724ba675SRob Herring }; 256*724ba675SRob Herring 257*724ba675SRob Herring sgmii0: port@4 { 258*724ba675SRob Herring label = "sw0"; 259*724ba675SRob Herring reg = <4>; 260*724ba675SRob Herring fixed-link { 261*724ba675SRob Herring speed = <1000>; 262*724ba675SRob Herring full-duplex; 263*724ba675SRob Herring }; 264*724ba675SRob Herring }; 265*724ba675SRob Herring 266*724ba675SRob Herring sgmii1: port@5 { 267*724ba675SRob Herring label = "sw1"; 268*724ba675SRob Herring reg = <5>; 269*724ba675SRob Herring fixed-link { 270*724ba675SRob Herring speed = <1000>; 271*724ba675SRob Herring full-duplex; 272*724ba675SRob Herring }; 273*724ba675SRob Herring }; 274*724ba675SRob Herring 275*724ba675SRob Herring port@8 { 276*724ba675SRob Herring ethernet = <&amac2>; 277*724ba675SRob Herring reg = <8>; 278*724ba675SRob Herring fixed-link { 279*724ba675SRob Herring speed = <1000>; 280*724ba675SRob Herring full-duplex; 281*724ba675SRob Herring }; 282*724ba675SRob Herring }; 283*724ba675SRob Herring }; 284*724ba675SRob Herring}; 285