ipq40xx: ncp-hg100-cellular: drop QPIC BAM node
[openwrt/openwrt.git] / target / linux / ipq40xx / files-6.6 / arch / arm / boot / dts / qcom / qcom-ipq4019-ncp-hg100-cellular.dts
1 // SPDX-License-Identifier: GPL-2.0-only OR MIT
2
3 #include "qcom-ipq4019.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/leds/common.h>
8 #include <dt-bindings/soc/qcom,tcsr.h>
9
10 / {
11 model = "Sony NCP-HG100/Cellular";
12 compatible = "sony,ncp-hg100-cellular";
13
14 aliases {
15 led-boot = &led_cloud_green;
16 led-failsafe = &led_cloud_red;
17 led-running = &led_cloud_green;
18 led-upgrade = &led_cloud_green;
19 label-mac-device = &gmac;
20 };
21
22 chosen {
23 bootargs = "console=ttyMSM0,115200n8 root=/dev/mmcblk0p15 rootfstype=squashfs,ext4";
24 };
25
26 memory {
27 device_type = "memory";
28 reg = <0x80000000 0x20000000>;
29 };
30
31 soc {
32 tcsr@1949000 {
33 status = "okay";
34 compatible = "qcom,tcsr";
35 reg = <0x1949000 0x100>;
36 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
37 };
38
39 tcsr@194b000 {
40 status = "okay";
41 compatible = "qcom,tcsr";
42 reg = <0x194b000 0x100>;
43 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
44 };
45
46 ess_tcsr@1953000 {
47 status = "okay";
48 compatible = "qcom,tcsr";
49 reg = <0x1953000 0x1000>;
50 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
51 };
52
53 tcsr@1957000 {
54 status = "okay";
55 compatible = "qcom,tcsr";
56 reg = <0x1957000 0x100>;
57 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
58 };
59 };
60
61 keys-repeat {
62 compatible = "gpio-keys";
63 pinctrl-0 = <&keys_pins>;
64 pinctrl-names = "default";
65 autorepeat;
66
67 key-volup {
68 label = "volume up";
69 linux,code = <KEY_VOLUMEUP>;
70 gpios = <&tlmm 39 GPIO_ACTIVE_HIGH>;
71 linux,input-type = <EV_KEY>;
72 };
73
74 key-voldown {
75 label = "volume down";
76 linux,code = <KEY_VOLUMEDOWN>;
77 gpios = <&tlmm 40 GPIO_ACTIVE_HIGH>;
78 linux,input-type = <EV_KEY>;
79 };
80
81 key-alexatrigger {
82 label = "alexa trigger";
83 linux,code = <BTN_0>;
84 gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
85 linux,input-type = <EV_KEY>;
86 };
87
88 key-mute {
89 label = "mic mute";
90 linux,code = <BTN_1>;
91 gpios = <&tlmm 47 GPIO_ACTIVE_LOW>;
92 linux,input-type = <EV_SW>;
93 };
94 };
95
96 keys {
97 compatible = "gpio-keys";
98
99 key-reset {
100 label = "reset";
101 gpios = <&tlmm 2 GPIO_ACTIVE_LOW>;
102 linux,code = <KEY_RESTART>;
103 };
104
105 key-wps {
106 label = "setup";
107 gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
108 linux,code = <KEY_WPS_BUTTON>;
109 };
110 };
111 };
112
113 &tlmm {
114 pinctrl-0 = <&bt_pins>, <&aud_pins>, <&mcu_pins>;
115 pinctrl-names = "default";
116
117 /*
118 * uart0 is shared for debug console and Z-Wave,
119 * use only for debug console in OpenWrt.
120 *
121 * 1: debug console
122 * 0: Z-Wave
123 */
124 uart0_ctrl_pins: uart0_ctrl_pinmux {
125 mux {
126 pins = "gpio15";
127 function = "gpio";
128 output-high;
129 };
130 };
131
132 serial_pins: serial_pinmux {
133 mux {
134 pins = "gpio16", "gpio17";
135 function = "blsp_uart0";
136 bias-disable;
137 };
138 };
139
140 /*
141 * reset pin for Z-Wave
142 * active-low, >= 20ns
143 */
144 zwave_pins: zwave_pinmux {
145 mux {
146 pins = "gpio59";
147 function = "gpio";
148 output-high;
149 };
150 };
151
152 serial_1_pins: serial1_pinmux {
153 mux {
154 pins = "gpio8", "gpio9",
155 "gpio10", "gpio11";
156 function = "blsp_uart1";
157 bias-disable;
158 };
159 };
160
161 bt_pins: bt_pinmux {
162 mux_reset {
163 pins = "gpio66";
164 function = "gpio";
165 output-high;
166 };
167
168 mux_pwr {
169 pins = "gpio68";
170 function = "gpio";
171 output-high;
172 };
173 };
174
175 mdio_pins: mdio_pinmux {
176 mux_1 {
177 pins = "gpio6";
178 function = "mdio";
179 bias-pull-up;
180 };
181
182 mux_2 {
183 pins = "gpio7";
184 function = "mdc";
185 bias-pull-up;
186 };
187 };
188
189 i2c_1_pins: i2c_1_pinmux {
190 mux {
191 pins = "gpio12", "gpio13";
192 function = "blsp_i2c1";
193 bias-disable;
194 };
195 };
196
197 keys_pins: keys_pinmux {
198 mux_1 {
199 pins = "gpio39", "gpio40", "gpio42", "gpio47";
200 function = "gpio";
201 bias-disable;
202 };
203
204 mux_2 {
205 pins = "gpio2";
206 function = "gpio";
207 input;
208 };
209 };
210
211 sd_pins: sd_pins {
212 mux {
213 function = "sdio";
214 pins = "gpio23", "gpio24", "gpio25", "gpio26",
215 "gpio28", "gpio29", "gpio30", "gpio31";
216 drive-strength = <4>;
217 };
218
219 mux_sd_clk {
220 function = "sdio";
221 pins = "gpio27";
222 drive-strength = <16>;
223 };
224
225 mux_sd7 {
226 function = "sdio";
227 pins = "gpio32";
228 drive-strength = <4>;
229 bias-disable;
230 };
231 };
232
233 aud_pins: aud_pinmux {
234 mux {
235 pins = "gpio48", "gpio49", "gpio50", "gpio51";
236 function = "aud_pin";
237 };
238 };
239
240 alc1304_pins: alc1304_pinmux {
241 mux_1 {
242 pins = "gpio44";
243 function = "gpio";
244 bias-disable;
245 };
246
247 mux_2 {
248 pins = "gpio45";
249 function = "gpio";
250 bias-disable;
251 };
252 };
253
254 cx2902x_reset: cx2902x_pinmux {
255 mux_1 {
256 pins = "gpio64";
257 function = "gpio";
258 bias-disable;
259 };
260
261 mux_2 {
262 pins = "gpio65";
263 function = "gpio";
264 bias-disable;
265 };
266 };
267
268 lte_pins: lte_pinmux {
269 mux_en {
270 pins = "gpio20";
271 function = "gpio";
272 output-high;
273 };
274
275 mux_reset {
276 pins = "gpio35";
277 function = "gpio";
278 input;
279 };
280 };
281
282 usb3_pins: usb3_pinmux {
283 mux_en {
284 pins = "gpio36";
285 function = "gpio";
286 output-high;
287 };
288
289 mux_flt {
290 pins = "gpio4";
291 function = "gpio";
292 input;
293 };
294 };
295
296 mcu_pins: mcu_pinmux {
297 mux_boot {
298 pins = "gpio38";
299 function = "gpio";
300 output-low;
301 };
302
303 mux_reset {
304 pins = "gpio5";
305 function = "gpio";
306 output-high;
307 };
308 };
309 };
310
311 &blsp_dma {
312 status = "okay";
313 };
314
315 &blsp1_i2c4 {
316 /*
317 * There is no driver for the following devices:
318 * - CY8C4014LQI@14 : Touch-Sensor for buttons on top
319 * - MINI54FDE@15 : MCU for Fan/RGB LED/Thermal control
320 * - ALC5629@18 : I2S/PCM Audio DAC
321 * - CX20924@41 : Voice Input Processor
322 */
323 pinctrl-0 = <&i2c_1_pins>;
324 pinctrl-names = "default";
325 status = "okay";
326
327 led-controller@32 {
328 compatible = "ti,lp55231";
329 reg = <0x32>;
330 clock-mode = /bits/ 8 <0>;
331 enable-gpio = <&tlmm 1 GPIO_ACTIVE_HIGH>;
332 #address-cells = <1>;
333 #size-cells = <0>;
334
335 led@0 {
336 chan-name = "green:wan";
337 led-cur = /bits/ 8 <50>;
338 max-cur = /bits/ 8 <100>;
339 reg = <0x0>;
340 color = <LED_COLOR_ID_GREEN>;
341 function = LED_FUNCTION_WAN;
342 };
343
344 led@1 {
345 chan-name = "blue:wan";
346 led-cur = /bits/ 8 <50>;
347 max-cur = /bits/ 8 <100>;
348 reg = <0x1>;
349 color = <LED_COLOR_ID_BLUE>;
350 function = LED_FUNCTION_WAN;
351 };
352
353 led@2 {
354 chan-name = "green:lan";
355 led-cur = /bits/ 8 <50>;
356 max-cur = /bits/ 8 <100>;
357 reg = <0x2>;
358 color = <LED_COLOR_ID_GREEN>;
359 function = LED_FUNCTION_LAN;
360 };
361
362 led@3 {
363 chan-name = "blue:lan";
364 led-cur = /bits/ 8 <50>;
365 max-cur = /bits/ 8 <100>;
366 reg = <0x3>;
367 color = <LED_COLOR_ID_BLUE>;
368 function = LED_FUNCTION_LAN;
369 };
370
371 led@4 {
372 chan-name = "green:wlan-2";
373 led-cur = /bits/ 8 <50>;
374 max-cur = /bits/ 8 <100>;
375 reg = <0x4>;
376 color = <LED_COLOR_ID_GREEN>;
377 function = LED_FUNCTION_WLAN;
378 function-enumerator = <2>;
379 linux,default-trigger = "phy0tpt";
380 };
381
382 led@5 {
383 chan-name = "blue:wlan-2";
384 led-cur = /bits/ 8 <50>;
385 max-cur = /bits/ 8 <100>;
386 reg = <0x5>;
387 color = <LED_COLOR_ID_BLUE>;
388 function = LED_FUNCTION_WLAN;
389 function-enumerator = <2>;
390 };
391
392 led@6 {
393 chan-name = "red:wan";
394 led-cur = /bits/ 8 <50>;
395 max-cur = /bits/ 8 <100>;
396 reg = <0x6>;
397 color = <LED_COLOR_ID_RED>;
398 function = LED_FUNCTION_WAN;
399 };
400
401 led@7 {
402 chan-name = "red:lan";
403 led-cur = /bits/ 8 <50>;
404 max-cur = /bits/ 8 <100>;
405 reg = <0x7>;
406 color = <LED_COLOR_ID_RED>;
407 function = LED_FUNCTION_LAN;
408 };
409
410 led@8 {
411 chan-name = "red:wlan-2";
412 led-cur = /bits/ 8 <50>;
413 max-cur = /bits/ 8 <100>;
414 reg = <0x8>;
415 color = <LED_COLOR_ID_RED>;
416 function = LED_FUNCTION_WLAN;
417 function-enumerator = <2>;
418 };
419 };
420
421 led-controller@33 {
422 compatible = "ti,lp55231";
423 reg = <0x33>;
424 clock-mode = /bits/ 8 <0>;
425 #address-cells = <1>;
426 #size-cells = <0>;
427
428 led@0 {
429 chan-name = "green:wlan-5";
430 led-cur = /bits/ 8 <50>;
431 max-cur = /bits/ 8 <100>;
432 reg = <0x0>;
433 color = <LED_COLOR_ID_GREEN>;
434 function = LED_FUNCTION_WLAN;
435 linux,default-trigger = "phy1tpt";
436 function-enumerator = <5>;
437 };
438
439 led@1 {
440 chan-name = "blue:wlan-5";
441 led-cur = /bits/ 8 <50>;
442 max-cur = /bits/ 8 <100>;
443 reg = <0x1>;
444 color = <LED_COLOR_ID_BLUE>;
445 function = LED_FUNCTION_WLAN;
446 function-enumerator = <5>;
447 };
448
449 led@2 {
450 chan-name = "green:wan-4";
451 led-cur = /bits/ 8 <50>;
452 max-cur = /bits/ 8 <100>;
453 reg = <0x2>;
454 color = <LED_COLOR_ID_GREEN>;
455 function = LED_FUNCTION_WAN; /* WWAN/LTE/4G */
456 function-enumerator = <4>; /* WWAN/LTE/4G */
457 };
458
459 led@3 {
460 chan-name = "blue:wan-4";
461 led-cur = /bits/ 8 <50>;
462 max-cur = /bits/ 8 <100>;
463 reg = <0x3>;
464 color = <LED_COLOR_ID_BLUE>;
465 function = LED_FUNCTION_WAN; /* WWAN/LTE/4G */
466 function-enumerator = <4>; /* WWAN/LTE/4G */
467 };
468
469 led_cloud_green: led@4 {
470 chan-name = "green:power";
471 led-cur = /bits/ 8 <50>;
472 max-cur = /bits/ 8 <100>;
473 reg = <0x4>;
474 color = <LED_COLOR_ID_GREEN>;
475 function = LED_FUNCTION_POWER;
476 };
477
478 led@5 {
479 chan-name = "blue:power";
480 led-cur = /bits/ 8 <50>;
481 max-cur = /bits/ 8 <100>;
482 reg = <0x5>;
483 color = <LED_COLOR_ID_BLUE>;
484 function = LED_FUNCTION_POWER;
485 };
486
487 led@6 {
488 chan-name = "red:wlan-5";
489 led-cur = /bits/ 8 <50>;
490 max-cur = /bits/ 8 <100>;
491 reg = <0x6>;
492 color = <LED_COLOR_ID_RED>;
493 function = LED_FUNCTION_WLAN;
494 function-enumerator = <5>;
495 };
496
497 led@7 {
498 chan-name = "red:wan-4";
499 led-cur = /bits/ 8 <50>;
500 max-cur = /bits/ 8 <100>;
501 reg = <0x7>;
502 color = <LED_COLOR_ID_RED>;
503 function = LED_FUNCTION_WAN; /* WWAN/LTE/4G */
504 function-enumerator = <4>; /* WWAN/LTE/4G */
505 };
506
507 led_cloud_red: led@8 {
508 chan-name = "red:power";
509 led-cur = /bits/ 8 <50>;
510 max-cur = /bits/ 8 <100>;
511 reg = <0x8>;
512 color = <LED_COLOR_ID_RED>;
513 function = LED_FUNCTION_POWER;
514 };
515 };
516 };
517
518 &blsp1_uart1 {
519 pinctrl-0 = <&serial_pins>, <&uart0_ctrl_pins>;
520 pinctrl-names = "default";
521 status = "okay";
522 };
523
524 &blsp1_uart2 {
525 pinctrl-0 = <&serial_1_pins>;
526 pinctrl-names = "default";
527 status = "okay";
528 };
529
530 &crypto {
531 status = "okay";
532 };
533
534 &cryptobam {
535 status = "okay";
536 };
537
538 &mdio {
539 status = "okay";
540 pinctrl-0 = <&mdio_pins>;
541 pinctrl-names = "default";
542 reset-gpios = <&tlmm 41 GPIO_ACTIVE_LOW>;
543 };
544
545 &prng {
546 status = "okay";
547 };
548
549 &vqmmc {
550 status = "okay";
551 };
552
553 &sdhci {
554 status = "okay";
555 pinctrl-0 = <&sd_pins>;
556 pinctrl-names = "default";
557 vqmmc-supply = <&vqmmc>;
558 non-removable;
559 #address-cells = <1>;
560 #size-cells = <0>;
561
562 emmc@0 {
563 compatible = "mmc-card";
564 reg = <0>;
565 };
566 };
567
568 &usb2 {
569 status = "okay";
570 };
571
572 &usb2_hs_phy {
573 status = "okay";
574 };
575
576 &usb3 {
577 status = "okay";
578
579 pinctrl-0 = <&usb3_pins>, <&lte_pins>;
580 pinctrl-names = "default";
581 };
582
583 &usb3_dwc {
584 #address-cells = <1>;
585 #size-cells = <0>;
586
587 device@1 {
588 compatible = "usb1bc7,1900";
589 reg = <1>;
590 };
591 };
592
593 &usb3_hs_phy {
594 status = "okay";
595 };
596
597 &usb3_ss_phy {
598 status = "okay";
599 };
600
601 &gmac {
602 status = "okay";
603 };
604
605 &switch {
606 status = "okay";
607 };
608
609 &swport4 {
610 status = "okay";
611 label = "lan";
612 };
613
614 &swport5 {
615 status = "okay";
616 label = "wan";
617 };
618
619 &wifi0 {
620 status = "okay";
621 qcom,ath10k-calibration-variant = "Sony-NCP-HG100-Cellular";
622 };
623
624 &wifi1 {
625 status = "okay";
626 qcom,ath10k-calibration-variant = "Sony-NCP-HG100-Cellular";
627 };
628
629 &watchdog {
630 status = "okay";
631 };