ipq806x: add support for Buffalo WXR-2533DHP
[openwrt/staging/dedeckeh.git] / target / linux / ipq806x / files-4.14 / arch / arm / boot / dts / qcom-ipq8064-wxr-2533dhp.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 #include "qcom-ipq8064-v2.0.dtsi"
3
4 #include <dt-bindings/input/input.h>
5
6 / {
7 model = "Buffalo WXR-2533DHP";
8 compatible = "buffalo,wxr-2533dhp", "qcom,ipq8064";
9
10 memory@42000000 {
11 reg = <0x42000000 0x1e000000>;
12 device_type = "memory";
13 };
14
15 reserved-memory {
16 #address-cells = <1>;
17 #size-cells = <1>;
18 ranges;
19 rsvd@41200000 {
20 reg = <0x41200000 0x300000>;
21 no-map;
22 };
23 };
24
25 aliases {
26 serial0 = &gsbi4_serial;
27
28 led-boot = &power;
29 led-failsafe = &diag;
30 led-running = &power;
31 led-upgrade = &power;
32 };
33
34 chosen {
35 /* use "ubi_rootfs" volume in "ubi" partition as rootfs */
36 bootargs = "ubi.block=0,1 root=/dev/ubiblock0_1 rootfstype=squashfs";
37 stdout-path = "serial0:115200n8";
38 };
39
40 soc {
41 nand@1ac00000 {
42 status = "okay";
43
44 pinctrl-0 = <&nand_pins>;
45 pinctrl-names = "default";
46
47 cs@0 {
48 reg = <0>;
49 compatible = "qcom,nandcs";
50
51 nand-ecc-strength = <4>;
52 nand-bus-width = <8>;
53 nand-ecc-step-size = <512>;
54
55 partitions {
56 compatible = "fixed-partitions";
57 #address-cells = <1>;
58 #size-cells = <1>;
59
60 ubi@0 {
61 label = "ubi";
62 reg = <0x0000000 0x4000000>;
63 };
64
65 rootfs_1@4000000 {
66 label = "rootfs_1";
67 reg = <0x4000000 0x4000000>;
68 };
69 };
70 };
71 };
72
73 mdio {
74 compatible = "virtual,mdio-gpio";
75 #address-cells = <1>;
76 #size-cells = <0>;
77 gpios = <&qcom_pinmux 1 GPIO_ACTIVE_HIGH>,
78 <&qcom_pinmux 0 GPIO_ACTIVE_HIGH>;
79 pinctrl-0 = <&mdio0_pins>;
80 pinctrl-names = "default";
81
82 ethernet-phy@0 {
83 reg = <0>;
84 qca,ar8327-initvals = <
85 0x00004 0x07600000 /* PAD0_MODE */
86 0x00008 0x01000000 /* PAD5_MODE */
87 0x0000c 0x00000080 /* PAD6_MODE */
88 0x00050 0xcc35cc35 /* LED_CTRL0 */
89 0x00054 0xca35ca35 /* LED_CTRL1 */
90 0x00058 0xc935c935 /* LED_CTRL2 */
91 0x0005c 0x03ffff00 /* LED_CTRL3 */
92 0x000e4 0x0006a545 /* MAC_POWER_SEL */
93 0x000e0 0xc74164de /* SGMII_CTRL */
94 0x0007c 0x0000007e /* PORT0_STATUS */
95 0x00094 0x0000007e /* PORT6_STATUS */
96 >;
97 };
98
99 ethernet-phy@4 {
100 reg = <4>;
101 };
102 };
103 };
104
105 leds {
106 compatible = "gpio-leds";
107 pinctrl-0 = <&led_pins>;
108 pinctrl-names = "default";
109
110 usb {
111 label = "wxr-2533dhp:green:usb";
112 gpios = <&qcom_pinmux 7 GPIO_ACTIVE_HIGH>;
113 linux,default-trigger = "usbport";
114 trigger-sources = <&hub_port0 &hub_port1>;
115 };
116
117 guestport {
118 label = "wxr-2533dhp:green:guestport";
119 gpios = <&qcom_pinmux 8 GPIO_ACTIVE_HIGH>;
120 };
121
122 diag: diag {
123 label = "wxr-2533dhp:orange:diag";
124 gpios = <&qcom_pinmux 9 GPIO_ACTIVE_HIGH>;
125 };
126
127 internet_orange {
128 label = "wxr-2533dhp:orange:internet";
129 gpios = <&qcom_pinmux 16 GPIO_ACTIVE_HIGH>;
130 };
131
132 internet_white {
133 label = "wxr-2533dhp:white:internet";
134 gpios = <&qcom_pinmux 22 GPIO_ACTIVE_HIGH>;
135 };
136
137 wireless_orange {
138 label = "wxr-2533dhp:orange:wireless";
139 gpios = <&qcom_pinmux 23 GPIO_ACTIVE_HIGH>;
140 };
141
142 wireless_white {
143 label = "wxr-2533dhp:white:wireless";
144 gpios = <&qcom_pinmux 24 GPIO_ACTIVE_HIGH>;
145 };
146
147 router_orange {
148 label = "wxr-2533dhp:orange:router";
149 gpios = <&qcom_pinmux 25 GPIO_ACTIVE_HIGH>;
150 };
151
152 router_white {
153 label = "wxr-2533dhp:white:router";
154 gpios = <&qcom_pinmux 26 GPIO_ACTIVE_LOW>;
155 };
156
157 power: power {
158 label = "wxr-2533dhp:white:power";
159 gpios = <&qcom_pinmux 53 GPIO_ACTIVE_HIGH>;
160 };
161 };
162
163 keys {
164 compatible = "gpio-keys";
165 pinctrl-0 = <&button_pins>;
166 pinctrl-names = "default";
167
168 power {
169 label = "power";
170 gpios = <&qcom_pinmux 58 GPIO_ACTIVE_LOW>;
171 linux,code = <KEY_POWER>;
172 };
173
174 reset {
175 label = "reset";
176 gpios = <&qcom_pinmux 54 GPIO_ACTIVE_LOW>;
177 linux,code = <KEY_RESTART>;
178 };
179
180 wps {
181 label = "wps";
182 gpios = <&qcom_pinmux 65 GPIO_ACTIVE_LOW>;
183 linux,code = <KEY_WPS_BUTTON>;
184 };
185
186 eject {
187 label = "eject";
188 gpios = <&qcom_pinmux 6 GPIO_ACTIVE_LOW>;
189 linux,code = <KEY_EJECTCD>;
190 };
191
192 guest {
193 label = "guest";
194 gpios = <&qcom_pinmux 64 GPIO_ACTIVE_LOW>;
195 linux,code = <BTN_0>;
196 };
197
198 ap {
199 label = "ap";
200 gpios = <&qcom_pinmux 55 GPIO_ACTIVE_LOW>;
201 linux,code = <BTN_1>;
202 linux,input-type = <EV_SW>;
203 };
204
205 router {
206 label = "router";
207 gpios = <&qcom_pinmux 56 GPIO_ACTIVE_LOW>;
208 linux,code = <BTN_1>;
209 linux,input-type = <EV_SW>;
210 };
211
212 auto {
213 label = "auto";
214 gpios = <&qcom_pinmux 57 GPIO_ACTIVE_LOW>;
215 linux,code = <BTN_1>;
216 linux,input-type = <EV_SW>;
217 };
218 };
219 };
220
221 &adm_dma {
222 status = "okay";
223 };
224
225 &gmac1 {
226 status = "okay";
227
228 phy-mode = "rgmii";
229 qcom,id = <1>;
230
231 pinctrl-0 = <&rgmii2_pins>;
232 pinctrl-names = "default";
233
234 mtd-mac-address = <&ART 6>;
235
236 fixed-link {
237 speed = <1000>;
238 full-duplex;
239 };
240 };
241
242 &gmac2 {
243 status = "ok";
244
245 phy-mode = "sgmii";
246 qcom,id = <2>;
247
248 mtd-mac-address = <&ART 0>;
249
250 fixed-link {
251 speed = <1000>;
252 full-duplex;
253 };
254 };
255
256 &gsbi4 {
257 status = "okay";
258 qcom,mode = <GSBI_PROT_I2C_UART>;
259 };
260
261 &gsbi4_serial {
262 status = "okay";
263
264 pinctrl-0 = <&uart0_pins>;
265 pinctrl-names = "default";
266 };
267
268 &gsbi5 {
269 status = "okay";
270 qcom,mode = <GSBI_PROT_SPI>;
271
272 spi@1a280000 {
273 status = "okay";
274
275 pinctrl-0 = <&spi_pins>;
276 pinctrl-names = "default";
277
278 cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>;
279
280 flash@0 {
281 compatible = "jedec,spi-nor";
282 spi-max-frequency = <50000000>;
283 reg = <0>;
284
285 partitions {
286 compatible = "fixed-partitions";
287 #address-cells = <1>;
288 #size-cells = <1>;
289
290 SBL1@0 {
291 label = "SBL1";
292 reg = <0x0 0x10000>;
293 read-only;
294 };
295
296 MIBIB@10000 {
297 label = "MIBIB";
298 reg = <0x10000 0x20000>;
299 read-only;
300 };
301
302 SBL2@30000 {
303 label = "SBL2";
304 reg = <0x30000 0x30000>;
305 read-only;
306 };
307
308 SBL3@60000 {
309 label = "SBL3";
310 reg = <0x60000 0x30000>;
311 read-only;
312 };
313
314 DDRCONFIG@90000 {
315 label = "DDRCONFIG";
316 reg = <0x90000 0x10000>;
317 read-only;
318 };
319
320 SSD@a0000 {
321 label = "SSD";
322 reg = <0xa0000 0x10000>;
323 read-only;
324 };
325
326 TZ@b0000 {
327 label = "TZ";
328 reg = <0xb0000 0x30000>;
329 read-only;
330 };
331
332 RPM@e0000 {
333 label = "RPM";
334 reg = <0xe0000 0x20000>;
335 read-only;
336 };
337
338 APPSBL@100000 {
339 label = "APPSBL";
340 reg = <0x100000 0x70000>;
341 read-only;
342 };
343
344 APPSBLENV@170000 {
345 label = "APPSBLENV";
346 reg = <0x170000 0x10000>;
347 read-only;
348 };
349
350 ART: ART@180000 {
351 label = "ART";
352 reg = <0x180000 0x40000>;
353 read-only;
354 };
355
356 BOOTCONFIG@1c0000 {
357 label = "BOOTCONFIG";
358 reg = <0x1c0000 0x10000>;
359 read-only;
360 };
361
362 APPSBL_1@1d0000 {
363 label = "APPSBL_1";
364 reg = <0x1d0000 0x70000>;
365 read-only;
366 };
367 };
368 };
369 };
370 };
371
372 &hs_phy_0 { /* USB3 port 0 HS phy */
373 status = "okay";
374 };
375
376 &ss_phy_0 { /* USB3 port 0 SS phy */
377 status = "okay";
378 };
379
380 &hs_phy_1 { /* USB3 port 1 HS phy */
381 status = "okay";
382 };
383
384 &ss_phy_1 { /* USB3 port 1 SS phy */
385 status = "okay";
386 };
387
388 &usb3_0 {
389 status = "okay";
390
391 pinctrl-0 = <&usb_pwr_en_pins>;
392 pinctrl-names = "default";
393 };
394
395 &usb3_1 {
396 status = "okay";
397 };
398
399 &dwc3_0 {
400 #address-cells = <1>;
401 #size-cells = <0>;
402
403 hub_port0: port@1 {
404 reg = <1>;
405 #trigger-source-cells = <0>;
406 };
407 };
408
409 &dwc3_1 {
410 #address-cells = <1>;
411 #size-cells = <0>;
412
413 hub_port1: port@1 {
414 reg = <1>;
415 #trigger-source-cells = <0>;
416 };
417 };
418
419 &pcie0 {
420 status = "okay";
421 };
422
423 &pcie1 {
424 status = "okay";
425 force_gen1 = <1>;
426 };
427
428 &qcom_pinmux {
429 button_pins: button_pins {
430 mux {
431 pins = "gpio6", "gpio54", "gpio55", "gpio56", "gpio57",
432 "gpio58", "gpio64", "gpio65";
433 function = "gpio";
434 drive-strength = <2>;
435 bias-pull-up;
436 };
437 };
438
439 led_pins: led_pins {
440 mux {
441 pins = "gpio7", "gpio8", "gpio9", "gpio16", "gpio22",
442 "gpio23", "gpio24", "gpio25", "gpio26", "gpio53";
443 function = "gpio";
444 drive-strength = <2>;
445 bias-pull-up;
446 };
447 };
448
449 uart0_pins: uart0_pins {
450 mux {
451 pins = "gpio10", "gpio11";
452 function = "gsbi4";
453 drive-strength = <12>;
454 bias-disable;
455 };
456 };
457
458 spi_pins: spi_pins {
459 mux {
460 pins = "gpio18", "gpio19", "gpio21";
461 function = "gsbi5";
462 bias-pull-down;
463 };
464
465 data {
466 pins = "gpio18", "gpio19";
467 drive-strength = <10>;
468 };
469
470 cs{
471 pins = "gpio20";
472 drive-strength = <10>;
473 bias-pull-up;
474 };
475
476 clk {
477 pins = "gpio21";
478 drive-strength = <12>;
479 };
480 };
481
482 mdio0_pins: mdio0_pins {
483 mux {
484 pins = "gpio0", "gpio1";
485 function = "gpio";
486 drive-strength = <8>;
487 bias-disable;
488 };
489 };
490
491 nand_pins: nand_pins {
492 mux {
493 pins = "gpio34", "gpio35", "gpio36",
494 "gpio37", "gpio38", "gpio39",
495 "gpio40", "gpio41", "gpio42",
496 "gpio43", "gpio44", "gpio45",
497 "gpio46", "gpio47";
498 function = "nand";
499 drive-strength = <10>;
500 bias-disable;
501 };
502
503 pullups {
504 pins = "gpio39";
505 bias-pull-up;
506 };
507
508 hold {
509 pins = "gpio40", "gpio41", "gpio42",
510 "gpio43", "gpio44", "gpio45",
511 "gpio46", "gpio47";
512 bias-bus-hold;
513 };
514 };
515
516 rgmii2_pins: rgmii2_pins {
517 mux {
518 pins = "gpio27", "gpio28", "gpio29", "gpio30", "gpio31", "gpio32",
519 "gpio51", "gpio52", "gpio59", "gpio60", "gpio61", "gpio62" ;
520 function = "rgmii2";
521 drive-strength = <8>;
522 bias-disable;
523 };
524 };
525
526 usb_pwr_en_pins: usb_pwr_en_pins {
527 mux{
528 pins = "gpio68";
529 function = "gpio";
530 drive-strength = <2>;
531 bias-pull-up;
532 output-high;
533 };
534 };
535 };