1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2/* 3 * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl> 4 */ 5 6/dts-v1/; 7 8#include "bcm47094.dtsi" 9#include "bcm5301x-nand-cs0-bch8.dtsi" 10 11/ { 12 compatible = "linksys,panamera", "brcm,bcm47094", "brcm,bcm4708"; 13 model = "Linksys EA9500"; 14 15 chosen { 16 bootargs = "console=ttyS0,115200"; 17 }; 18 19 memory { 20 reg = <0x00000000 0x08000000 21 0x88000000 0x08000000>; 22 }; 23 24 gpio-keys { 25 compatible = "gpio-keys"; 26 #address-cells = <1>; 27 #size-cells = <0>; 28 29 wps { 30 label = "WPS"; 31 linux,code = <KEY_WPS_BUTTON>; 32 gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; 33 }; 34 35 rfkill { 36 label = "WiFi"; 37 linux,code = <KEY_RFKILL>; 38 gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>; 39 }; 40 41 reset { 42 label = "Reset"; 43 linux,code = <KEY_RESTART>; 44 gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; 45 }; 46 }; 47 48 leds { 49 compatible = "gpio-leds"; 50 51 wps { 52 label = "bcm53xx:white:wps"; 53 gpios = <&chipcommon 22 GPIO_ACTIVE_LOW>; 54 }; 55 56 usb2 { 57 label = "bcm53xx:green:usb2"; 58 gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; 59 trigger-sources = <&ohci_port2>, <&ehci_port2>; 60 linux,default-trigger = "usbport"; 61 }; 62 63 usb3 { 64 label = "bcm53xx:green:usb3"; 65 gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; 66 trigger-sources = <&ohci_port1>, <&ehci_port1>, 67 <&xhci_port1>; 68 linux,default-trigger = "usbport"; 69 }; 70 71 power { 72 label = "bcm53xx:white:power"; 73 gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; 74 }; 75 76 wifi-disabled { 77 label = "bcm53xx:amber:wifi-disabled"; 78 gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>; 79 }; 80 81 wifi-enabled { 82 label = "bcm53xx:white:wifi-enabled"; 83 gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; 84 }; 85 86 bluebar1 { 87 label = "bcm53xx:white:bluebar1"; 88 gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; 89 }; 90 91 bluebar2 { 92 label = "bcm53xx:white:bluebar2"; 93 gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; 94 }; 95 96 bluebar3 { 97 label = "bcm53xx:white:bluebar3"; 98 gpios = <&chipcommon 15 GPIO_ACTIVE_LOW>; 99 }; 100 101 bluebar4 { 102 label = "bcm53xx:white:bluebar4"; 103 gpios = <&chipcommon 18 GPIO_ACTIVE_HIGH>; 104 }; 105 106 bluebar5 { 107 label = "bcm53xx:white:bluebar5"; 108 gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>; 109 }; 110 111 bluebar6 { 112 label = "bcm53xx:white:bluebar6"; 113 gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>; 114 }; 115 116 bluebar7 { 117 label = "bcm53xx:white:bluebar7"; 118 gpios = <&chipcommon 21 GPIO_ACTIVE_HIGH>; 119 }; 120 121 bluebar8 { 122 label = "bcm53xx:white:bluebar8"; 123 gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; 124 }; 125 }; 126 127 mdio-bus-mux { 128 /* BIT(9) = 1 => external mdio */ 129 mdio_ext: mdio@200 { 130 reg = <0x200>; 131 #address-cells = <1>; 132 #size-cells = <0>; 133 }; 134 }; 135 136 mdio-mii-mux { 137 compatible = "mdio-mux-mmioreg"; 138 mdio-parent-bus = <&mdio_ext>; 139 #address-cells = <1>; 140 #size-cells = <0>; 141 reg = <0x1800c1c0 0x4>; 142 143 /* BIT(6) = mdc, BIT(7) = mdio */ 144 mux-mask = <0xc0>; 145 146 mdio-mii@0 { 147 /* Enable MII function */ 148 reg = <0x0>; 149 #address-cells = <1>; 150 #size-cells = <0>; 151 152 switch@0 { 153 compatible = "brcm,bcm53125"; 154 #address-cells = <1>; 155 #size-cells = <0>; 156 reset-gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>; 157 reset-names = "robo_reset"; 158 reg = <0>; 159 dsa,member = <1 0>; 160 161 ports { 162 #address-cells = <1>; 163 #size-cells = <0>; 164 165 port@0 { 166 reg = <0>; 167 label = "lan1"; 168 }; 169 170 port@1 { 171 reg = <1>; 172 label = "lan5"; 173 }; 174 175 port@2 { 176 reg = <2>; 177 label = "lan2"; 178 }; 179 180 port@3 { 181 reg = <3>; 182 label = "lan6"; 183 }; 184 185 port@4 { 186 reg = <4>; 187 label = "lan3"; 188 }; 189 190 sw1_p8: port@8 { 191 reg = <8>; 192 ethernet = <&sw0_p0>; 193 label = "cpu"; 194 195 fixed-link { 196 speed = <1000>; 197 full-duplex; 198 }; 199 }; 200 }; 201 }; 202 }; 203 }; 204}; 205 206&usb2 { 207 vcc-gpio = <&chipcommon 13 GPIO_ACTIVE_HIGH>; 208}; 209 210&usb3 { 211 vcc-gpio = <&chipcommon 14 GPIO_ACTIVE_HIGH>; 212}; 213 214&srab { 215 compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab"; 216 status = "okay"; 217 dsa,member = <0 0>; 218 219 ports { 220 #address-cells = <1>; 221 #size-cells = <0>; 222 223 port@1 { 224 reg = <1>; 225 label = "lan7"; 226 }; 227 228 port@2 { 229 reg = <2>; 230 label = "lan4"; 231 }; 232 233 port@3 { 234 reg = <3>; 235 label = "lan8"; 236 }; 237 238 port@4 { 239 reg = <4>; 240 label = "wan"; 241 }; 242 243 port@8 { 244 reg = <8>; 245 ethernet = <&gmac2>; 246 label = "cpu"; 247 248 fixed-link { 249 speed = <1000>; 250 full-duplex; 251 }; 252 }; 253 254 sw0_p0: port@0 { 255 reg = <0>; 256 label = "extsw"; 257 258 fixed-link { 259 speed = <1000>; 260 full-duplex; 261 }; 262 }; 263 }; 264}; 265 266&usb3_phy { 267 status = "okay"; 268}; 269