kernel/ipq40xx: Restore kernel files for v6.1
[openwrt/staging/stintel.git] / target / linux / ipq40xx / files / arch / arm / boot / dts / qcom-ipq4019-whw03v2.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "qcom-ipq4019.dtsi"
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/soc/qcom,tcsr.h>
7 #include <dt-bindings/leds/common.h>
8
9 / {
10 model = "Linksys WHW03 V2 (Velop)";
11 compatible = "linksys,whw03v2", "qcom,ipq4019";
12
13 aliases {
14 led-boot = &led_blue;
15 led-failsafe = &led_red;
16 led-running = &led_green;
17 led-upgrade = &led_red;
18 };
19
20 // The arguments rootfstype and ro are needed
21 // to override the default bootargs
22 chosen {
23 bootargs-append = " root=/dev/ubiblock0_0 rootfstype=squashfs ro";
24 stdout-path = &blsp1_uart1;
25 };
26
27 soc {
28 ess-tcsr@1953000 {
29 compatible = "qcom,tcsr";
30 reg = <0x1953000 0x1000>;
31 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
32 };
33
34
35 tcsr@1949000 {
36 compatible = "qcom,tcsr";
37 reg = <0x1949000 0x100>;
38 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
39 };
40
41 tcsr@194b000 {
42 compatible = "qcom,tcsr";
43 reg = <0x194b000 0x100>;
44 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
45 };
46
47 tcsr@1957000 {
48 compatible = "qcom,tcsr";
49 reg = <0x1957000 0x100>;
50 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
51 };
52 };
53
54
55 keys {
56 compatible = "gpio-keys";
57
58 reset {
59 label = "reset";
60 gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
61 linux,code = <KEY_RESTART>;
62 };
63 };
64 };
65
66
67 &tlmm {
68 mdio_pins: mdio-pinmux {
69 mux-1 {
70 pins = "gpio6";
71 function = "mdio";
72 bias-pull-up;
73 };
74
75 mux-2 {
76 pins = "gpio7";
77 function = "mdc";
78 bias-pull-up;
79 };
80 };
81
82 i2c_0_pins: i2c-0-pinmux {
83 mux {
84 function = "blsp_i2c0";
85 pins = "gpio20", "gpio21";
86 bias-disable;
87 };
88 };
89
90 serial_0_pins: serial0-pinmux {
91 mux {
92 pins = "gpio16", "gpio17";
93 function = "blsp_uart0";
94 bias-disable;
95 };
96 };
97
98 serial_1_pins: serial1-pinmux {
99 mux {
100 pins = "gpio8", "gpio9", "gpio10", "gpio11";
101 function = "blsp_uart1";
102 bias-disable;
103 };
104 };
105
106 spi_0_pins: spi-0-pinmux {
107 mux {
108 function = "blsp_spi0";
109 pins = "gpio13", "gpio14", "gpio15";
110 drive-strength = <12>;
111 bias-disable;
112 };
113
114 mux-cs {
115 pins = "gpio12";
116 drive-strength = <2>;
117 bias-disable;
118 output-high;
119 };
120 };
121
122 spi_1_pins: spi-1-pinmux {
123 mux-1 {
124 function = "blsp_spi1";
125 pins = "gpio44", "gpio46","gpio47";
126 bias-disable;
127 };
128
129 mux-2 {
130 pins = "gpio31", "gpio45", "gpio49";
131 function = "gpio";
132 bias-pull-up;
133 output-high;
134 };
135
136 host-interrupt {
137 pins = "gpio42";
138 function = "gpio";
139 input;
140 };
141 };
142
143 wifi_0_pins: wifi0-pinmux {
144 btcoexist {
145 bias-pull-up;
146 drive-strength = <6>;
147 function = "gpio";
148 output-high;
149 pins = "gpio52";
150 };
151 };
152
153 zigbee-0 {
154 gpio-hog;
155 gpios = <29 GPIO_ACTIVE_HIGH>;
156 bias-disable;
157 output-low;
158 };
159
160 zigbee-1 {
161 gpio-hog;
162 gpios = <50 GPIO_ACTIVE_HIGH>;
163 bias-disable;
164 input;
165 };
166
167 bluetooth-enable {
168 gpio-hog;
169 gpios = <32 GPIO_ACTIVE_HIGH>;
170 output-high;
171 };
172 };
173
174 &mdio {
175 status = "okay";
176 pinctrl-0 = <&mdio_pins>;
177 pinctrl-names = "default";
178 phy-reset-gpios = <&tlmm 19 GPIO_ACTIVE_LOW>;
179 };
180
181 &ethphy0 {
182 status = "disabled";
183 };
184
185 &ethphy1 {
186 status = "disabled";
187 };
188
189 &ethphy2 {
190 status = "disabled";
191 };
192
193 &ethphy3 {
194 reg = <0x1b>;
195 };
196
197 &ethphy4 {
198 reg = <0x1c>;
199 };
200
201 &psgmiiphy {
202 reg = <0x1d>;
203 };
204
205 &watchdog {
206 status = "okay";
207 };
208
209 &prng {
210 status = "okay";
211 };
212
213 &blsp_dma {
214 status = "okay";
215 };
216
217 &cryptobam {
218 num-channels = <4>;
219 qcom,num-ees = <2>;
220
221 status = "okay";
222 };
223
224 &crypto {
225 status = "okay";
226 };
227
228 &blsp1_uart1 {
229 status = "okay";
230 pinctrl-0 = <&serial_0_pins>;
231 pinctrl-names = "default";
232 };
233
234 &blsp1_uart2 {
235 status = "okay";
236 pinctrl-0 = <&serial_1_pins>;
237 pinctrl-names = "default";
238
239 bluetooth {
240 compatible = "csr,8811";
241
242 enable-gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>;
243 };
244 };
245
246 &blsp1_spi2 {
247 pinctrl-0 = <&spi_1_pins>;
248 pinctrl-names = "default";
249 status = "okay";
250
251 cs-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>;
252
253 zigbee@0 {
254 #address-cells = <1>;
255 #size-cells = <0>;
256
257 compatible = "silabs,em3581";
258 reg = <0>;
259 spi-max-frequency = <12000000>;
260 };
261 };
262
263 &blsp1_i2c3 {
264 pinctrl-0 = <&i2c_0_pins>;
265 pinctrl-names = "default";
266
267 status = "okay";
268
269 // RGB LEDs
270 pca9633: led-controller@62 {
271 compatible = "nxp,pca9633";
272 nxp,hw-blink;
273 reg = <0x62>;
274 #address-cells = <1>;
275 #size-cells = <0>;
276
277 led_red: red@0 {
278 color = <LED_COLOR_ID_RED>;
279 function = LED_FUNCTION_INDICATOR;
280 linux,default-trigger = "none";
281 reg = <0>;
282 };
283
284 led_green: green@1 {
285 color = <LED_COLOR_ID_GREEN>;
286 function = LED_FUNCTION_INDICATOR;
287 linux,default-trigger = "none";
288 reg = <1>;
289 };
290
291 led_blue: blue@2 {
292 color = <LED_COLOR_ID_BLUE>;
293 function = LED_FUNCTION_INDICATOR;
294 linux,default-trigger = "default-on";
295 reg = <2>;
296 };
297 };
298 };
299
300 &usb3_ss_phy {
301 status = "okay";
302 };
303
304 &usb3_hs_phy {
305 status = "okay";
306 };
307
308 &usb2_hs_phy {
309 status = "okay";
310 };
311
312 &nand {
313 status = "okay";
314
315 nand@0 {
316 partitions {
317 compatible = "fixed-partitions";
318 #address-cells = <1>;
319 #size-cells = <1>;
320
321 partition@0 {
322 label = "SBL1";
323 reg = <0x0 0x100000>;
324 read-only;
325 };
326
327 partition@100000 {
328 label = "MIBIB";
329 reg = <0x100000 0x100000>;
330 read-only;
331 };
332
333 partition@200000 {
334 label = "QSEE";
335 reg = <0x200000 0x100000>;
336 read-only;
337 };
338
339 partition@300000 {
340 label = "CDT";
341 reg = <0x300000 0x80000>;
342 read-only;
343 };
344
345 partition@380000 {
346 label = "APPSBL";
347 reg = <0x380000 0x200000>;
348 read-only;
349 };
350
351 partition@580000 {
352 label = "ART";
353 reg = <0x580000 0x80000>;
354 read-only;
355
356 nvmem-layout {
357 compatible = "fixed-layout";
358 #address-cells = <1>;
359 #size-cells = <1>;
360
361 macaddr_gmac0: macaddr@0 {
362 compatible = "mac-base";
363 reg = <0x0 0x6>;
364 #nvmem-cell-cells = <1>;
365 };
366
367 macaddr_gmac1: macaddr@6 {
368 reg = <0x6 0x6>;
369 };
370
371 precal_art_1000: precal@1000 {
372 reg = <0x1000 0x2f20>;
373 };
374
375 precal_art_5000: precal@5000 {
376 reg = <0x5000 0x2f20>;
377 };
378
379 precal_art_9000: precal@9000 {
380 reg = <0x9000 0x2f20>;
381 };
382 };
383 };
384
385 partition@600000 {
386 label = "u_env";
387 reg = <0x600000 0x80000>;
388 };
389
390 partition@680000 {
391 label = "s_env";
392 reg = <0x680000 0x40000>;
393 };
394
395 partition@6c0000 {
396 label = "devinfo";
397 reg = <0x6c0000 0x40000>;
398 read-only;
399 };
400
401 partition@700000 {
402 label = "kernel";
403 reg = <0x700000 0xa100000>;
404 };
405
406 partition@d00000 {
407 label = "rootfs";
408 reg = <0xd00000 0x9b00000>;
409 };
410
411 partition@a800000 {
412 label = "alt_kernel";
413 reg = <0xa800000 0xa100000>;
414 };
415
416 partition@ae00000 {
417 label = "alt_rootfs";
418 reg = <0xae00000 0x9b00000>;
419 };
420
421 partition@14900000 {
422 label = "sysdiag";
423 reg = <0x14900000 0x200000>;
424 read-only;
425 };
426
427 partition@14b00000 {
428 label = "syscfg";
429 reg = <0x14b00000 0xb500000>;
430 read-only;
431 };
432 };
433 };
434 };
435
436 &pcie0 {
437 status = "okay";
438
439 perst-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
440 wake-gpios = <&tlmm 40 GPIO_ACTIVE_LOW>;
441 clkreq-gpios = <&tlmm 39 GPIO_ACTIVE_LOW>;
442
443 bridge@0,0 {
444 reg = <0x00000000 0 0 0 0>;
445 #address-cells = <3>;
446 #size-cells = <2>;
447 ranges;
448
449 wifi2: wifi@1,0 {
450 compatible = "qcom,ath10k";
451 reg = <0x00010000 0 0 0 0>;
452 };
453 };
454 };
455
456 &qpic_bam {
457 status = "okay";
458 };
459
460 &gmac {
461 status = "okay";
462 };
463
464 &switch {
465 status = "okay";
466 };
467
468 &swport4 {
469 status = "okay";
470 label = "lan";
471
472 nvmem-cell-names = "mac-address";
473 nvmem-cells = <&macaddr_gmac1>;
474 };
475
476 &swport5 {
477 status = "okay";
478 label = "wan";
479
480 nvmem-cell-names = "mac-address";
481 nvmem-cells = <&macaddr_gmac0 0>;
482 };
483
484 &wifi0 {
485 pinctrl-0 = <&wifi_0_pins>;
486 pinctrl-names = "default";
487
488 status = "okay";
489
490 qcom,coexist-support = <1>;
491 qcom,coexist-gpio-pin = <0x34>;
492
493 ieee80211-freq-limit = <2401000 2473000>;
494 qcom,ath10k-calibration-variant = "linksys-whw03v2";
495
496 nvmem-cell-names = "pre-calibration", "mac-address";
497 nvmem-cells = <&precal_art_1000>, <&macaddr_gmac0 1>;
498 };
499
500 &wifi1 {
501 status = "okay";
502
503 ieee80211-freq-limit = <5170000 5250000>;
504 qcom,ath10k-calibration-variant = "linksys-whw03v2";
505
506 nvmem-cell-names = "pre-calibration", "mac-address";
507 nvmem-cells = <&precal_art_5000>, <&macaddr_gmac0 2>;
508 };
509
510 &wifi2 {
511 status = "okay";
512
513 ieee80211-freq-limit = <5735000 5835000>;
514 qcom,ath10k-calibration-variant = "linksys-whw03v2";
515
516 nvmem-cell-names = "pre-calibration", "mac-address";
517 nvmem-cells = <&precal_art_9000>, <&macaddr_gmac0 3>;
518 };