qcom-ipq8064-rb3011.dts (5739B)
1// SPDX-License-Identifier: GPL-2.0 2#include "qcom-ipq8064.dtsi" 3#include <dt-bindings/input/input.h> 4 5/ { 6 model = "MikroTik RB3011UiAS-RM"; 7 compatible = "mikrotik,rb3011"; 8 9 aliases { 10 serial0 = &gsbi7_serial; 11 ethernet0 = &gmac0; 12 ethernet1 = &gmac3; 13 mdio-gpio0 = &mdio0; 14 mdio-gpio1 = &mdio1; 15 }; 16 17 chosen { 18 bootargs = "loglevel=8 console=ttyMSM0,115200"; 19 stdout-path = "serial0:115200n8"; 20 }; 21 22 memory@42000000 { 23 reg = <0x42000000 0x3e000000>; 24 device_type = "memory"; 25 }; 26 27 mdio0: mdio-0 { 28 status = "okay"; 29 compatible = "virtual,mdio-gpio"; 30 gpios = <&qcom_pinmux 1 GPIO_ACTIVE_HIGH>, 31 <&qcom_pinmux 0 GPIO_ACTIVE_HIGH>; 32 #address-cells = <1>; 33 #size-cells = <0>; 34 35 pinctrl-0 = <&mdio0_pins>; 36 pinctrl-names = "default"; 37 38 switch0: switch@10 { 39 compatible = "qca,qca8337"; 40 #address-cells = <1>; 41 #size-cells = <0>; 42 43 dsa,member = <0 0>; 44 45 pinctrl-0 = <&sw0_reset_pin>; 46 pinctrl-names = "default"; 47 48 reset-gpios = <&qcom_pinmux 16 GPIO_ACTIVE_LOW>; 49 reg = <0x10>; 50 51 ports { 52 #address-cells = <1>; 53 #size-cells = <0>; 54 55 switch0cpu: port@0 { 56 reg = <0>; 57 label = "cpu"; 58 ethernet = <&gmac0>; 59 phy-mode = "rgmii-id"; 60 fixed-link { 61 speed = <1000>; 62 full-duplex; 63 }; 64 }; 65 66 port@1 { 67 reg = <1>; 68 label = "sw1"; 69 }; 70 71 port@2 { 72 reg = <2>; 73 label = "sw2"; 74 }; 75 76 port@3 { 77 reg = <3>; 78 label = "sw3"; 79 }; 80 81 port@4 { 82 reg = <4>; 83 label = "sw4"; 84 }; 85 86 port@5 { 87 reg = <5>; 88 label = "sw5"; 89 }; 90 }; 91 }; 92 }; 93 94 mdio1: mdio-1 { 95 status = "okay"; 96 compatible = "virtual,mdio-gpio"; 97 gpios = <&qcom_pinmux 11 GPIO_ACTIVE_HIGH>, 98 <&qcom_pinmux 10 GPIO_ACTIVE_HIGH>; 99 #address-cells = <1>; 100 #size-cells = <0>; 101 102 pinctrl-0 = <&mdio1_pins>; 103 pinctrl-names = "default"; 104 105 switch1: switch@14 { 106 compatible = "qca,qca8337"; 107 #address-cells = <1>; 108 #size-cells = <0>; 109 110 dsa,member = <1 0>; 111 112 pinctrl-0 = <&sw1_reset_pin>; 113 pinctrl-names = "default"; 114 115 reset-gpios = <&qcom_pinmux 17 GPIO_ACTIVE_LOW>; 116 reg = <0x10>; 117 118 ports { 119 #address-cells = <1>; 120 #size-cells = <0>; 121 122 switch1cpu: port@0 { 123 reg = <0>; 124 label = "cpu"; 125 ethernet = <&gmac3>; 126 phy-mode = "sgmii"; 127 fixed-link { 128 speed = <1000>; 129 full-duplex; 130 }; 131 }; 132 133 port@1 { 134 reg = <1>; 135 label = "sw6"; 136 }; 137 138 port@2 { 139 reg = <2>; 140 label = "sw7"; 141 }; 142 143 port@3 { 144 reg = <3>; 145 label = "sw8"; 146 }; 147 148 port@4 { 149 reg = <4>; 150 label = "sw9"; 151 }; 152 153 port@5 { 154 reg = <5>; 155 label = "sw10"; 156 }; 157 }; 158 }; 159 }; 160 161 soc { 162 gsbi5: gsbi@1a200000 { 163 qcom,mode = <GSBI_PROT_SPI>; 164 status = "okay"; 165 166 spi4: spi@1a280000 { 167 status = "okay"; 168 spi-max-frequency = <50000000>; 169 170 pinctrl-0 = <&spi_pins>; 171 pinctrl-names = "default"; 172 173 cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>; 174 175 norflash: flash@0 { 176 compatible = "jedec,spi-nor"; 177 #address-cells = <1>; 178 #size-cells = <1>; 179 spi-max-frequency = <50000000>; 180 reg = <0>; 181 182 partition@0 { 183 label = "RouterBoot"; 184 reg = <0x0 0x40000>; 185 }; 186 }; 187 }; 188 }; 189 190 gpio_keys { 191 compatible = "gpio-keys"; 192 pinctrl-0 = <&buttons_pins>; 193 pinctrl-names = "default"; 194 195 button@1 { 196 label = "reset"; 197 linux,code = <KEY_RESTART>; 198 gpios = <&qcom_pinmux 66 GPIO_ACTIVE_LOW>; 199 linux,input-type = <1>; 200 debounce-interval = <60>; 201 }; 202 }; 203 204 leds { 205 compatible = "gpio-leds"; 206 pinctrl-0 = <&leds_pins>; 207 pinctrl-names = "default"; 208 209 led@7 { 210 label = "rb3011:green:user"; 211 gpios = <&qcom_pinmux 33 GPIO_ACTIVE_HIGH>; 212 default-state = "off"; 213 }; 214 }; 215 216 }; 217}; 218 219&adm_dma { 220 status = "okay"; 221}; 222 223&gmac0 { 224 status = "okay"; 225 226 phy-mode = "rgmii"; 227 qcom,id = <0>; 228 phy-handle = <&switch0cpu>; 229 230 fixed-link { 231 speed = <1000>; 232 full-duplex; 233 }; 234}; 235 236&gmac3 { 237 status = "okay"; 238 239 phy-mode = "sgmii"; 240 qcom,id = <3>; 241 phy-handle = <&switch1cpu>; 242 243 fixed-link { 244 speed = <1000>; 245 full-duplex; 246 }; 247}; 248 249&gsbi7 { 250 status = "okay"; 251 qcom,mode = <GSBI_PROT_I2C_UART>; 252}; 253 254&gsbi7_serial { 255 status = "okay"; 256}; 257 258&hs_phy_1 { 259 status = "okay"; 260}; 261 262&nand { 263 status = "okay"; 264 265 nandcs@0 { 266 compatible = "qcom,nandcs"; 267 reg = <0>; 268 269 nand-ecc-strength = <4>; 270 nand-bus-width = <8>; 271 nand-ecc-step-size = <512>; 272 273 partitions { 274 compatible = "fixed-partitions"; 275 #address-cells = <1>; 276 #size-cells = <1>; 277 278 boot@0 { 279 label = "RouterBoard NAND 1 Boot"; 280 reg = <0x0000000 0x0800000>; 281 }; 282 283 main@800000 { 284 label = "RouterBoard NAND 1 Main"; 285 reg = <0x0800000 0x7800000>; 286 }; 287 }; 288 }; 289}; 290 291&qcom_pinmux { 292 buttons_pins: buttons_pins { 293 mux { 294 pins = "gpio66"; 295 drive-strength = <16>; 296 bias-disable; 297 }; 298 }; 299 300 leds_pins: leds_pins { 301 mux { 302 pins = "gpio33"; 303 drive-strength = <16>; 304 bias-disable; 305 }; 306 }; 307 308 mdio0_pins: mdio0_pins { 309 mux { 310 pins = "gpio0", "gpio1"; 311 function = "gpio"; 312 drive-strength = <8>; 313 bias-disable; 314 }; 315 }; 316 317 mdio1_pins: mdio1_pins { 318 mux { 319 pins = "gpio10", "gpio11"; 320 function = "gpio"; 321 drive-strength = <8>; 322 bias-disable; 323 }; 324 }; 325 326 sw0_reset_pin: sw0_reset_pin { 327 mux { 328 pins = "gpio16"; 329 drive-strength = <16>; 330 function = "gpio"; 331 bias-disable; 332 input-disable; 333 }; 334 }; 335 336 sw1_reset_pin: sw1_reset_pin { 337 mux { 338 pins = "gpio17"; 339 drive-strength = <16>; 340 function = "gpio"; 341 bias-disable; 342 input-disable; 343 }; 344 }; 345 346 usb1_pwr_en_pins: usb1_pwr_en_pins { 347 mux { 348 pins = "gpio4"; 349 function = "gpio"; 350 drive-strength = <16>; 351 bias-disable; 352 output-high; 353 }; 354 }; 355}; 356 357&ss_phy_1 { 358 status = "okay"; 359}; 360 361&usb3_1 { 362 pinctrl-0 = <&usb1_pwr_en_pins>; 363 pinctrl-names = "default"; 364 365 status = "okay"; 366};