blob: 7881a27be0297096c6e633825b63ed01ddfd2970 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Copyright (c) 2018 MediaTek Inc.
4 * Author: Ben Ho <ben.ho@mediatek.com>
5 * Erin Lo <erin.lo@mediatek.com>
6 */
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/input/input.h>
10#include "mt8183.dtsi"
11#include "mt6358.dtsi"
12
13/ {
14 aliases {
15 serial0 = &uart0;
16 mmc0 = &mmc0;
17 mmc1 = &mmc1;
18 };
19
20 chosen {
21 stdout-path = "serial0:115200n8";
22 };
23
24 backlight_lcd0: backlight_lcd0 {
25 compatible = "pwm-backlight";
26 pwms = <&pwm0 0 500000>;
27 power-supply = <&bl_pp5000>;
28 enable-gpios = <&pio 176 0>;
29 brightness-levels = <0 1023>;
30 num-interpolated-steps = <1023>;
31 default-brightness-level = <576>;
32 status = "okay";
33 };
34
35 memory@40000000 {
36 device_type = "memory";
37 reg = <0 0x40000000 0 0x80000000>;
38 };
39
40 clk32k: oscillator1 {
41 compatible = "fixed-clock";
42 #clock-cells = <0>;
43 clock-frequency = <32768>;
44 clock-output-names = "clk32k";
45 };
46
47 it6505_pp18_reg: regulator0 {
48 compatible = "regulator-fixed";
49 regulator-name = "it6505_pp18";
50 regulator-min-microvolt = <1800000>;
51 regulator-max-microvolt = <1800000>;
52 gpio = <&pio 178 0>;
53 enable-active-high;
54 };
55
56 lcd_pp3300: regulator1 {
57 compatible = "regulator-fixed";
58 regulator-name = "lcd_pp3300";
59 regulator-min-microvolt = <3300000>;
60 regulator-max-microvolt = <3300000>;
61 regulator-always-on;
62 regulator-boot-on;
63 };
64
65 bl_pp5000: regulator2 {
66 compatible = "regulator-fixed";
67 regulator-name = "bl_pp5000";
68 regulator-min-microvolt = <5000000>;
69 regulator-max-microvolt = <5000000>;
70 regulator-always-on;
71 regulator-boot-on;
72 };
73
74 mmc1_fixed_power: regulator3 {
75 compatible = "regulator-fixed";
76 regulator-name = "mmc1_power";
77 regulator-min-microvolt = <3300000>;
78 regulator-max-microvolt = <3300000>;
79 };
80
81 mmc1_fixed_io: regulator4 {
82 compatible = "regulator-fixed";
83 regulator-name = "mmc1_io";
84 regulator-min-microvolt = <1800000>;
85 regulator-max-microvolt = <1800000>;
86 };
87
88 pp1800_alw: regulator5 {
89 compatible = "regulator-fixed";
90 regulator-name = "pp1800_alw";
91 regulator-always-on;
92 regulator-boot-on;
93 regulator-min-microvolt = <1800000>;
94 regulator-max-microvolt = <1800000>;
95 };
96
97 pp3300_alw: regulator6 {
98 compatible = "regulator-fixed";
99 regulator-name = "pp3300_alw";
100 regulator-always-on;
101 regulator-boot-on;
102 regulator-min-microvolt = <3300000>;
103 regulator-max-microvolt = <3300000>;
104 };
105
106 /* system wide semi-regulated power rail from charger */
107 reg_vsys: regulator-vsys {
108 compatible = "regulator-fixed";
109 regulator-name = "vsys";
110 regulator-always-on;
111 regulator-boot-on;
112 };
113
114 reserved_memory: reserved-memory {
115 #address-cells = <2>;
116 #size-cells = <2>;
117 ranges;
118
119 scp_mem_reserved: memory@50000000 {
120 compatible = "shared-dma-pool";
121 reg = <0 0x50000000 0 0x2900000>;
122 no-map;
123 };
124 };
125
126 sound: mt8183-sound {
127 mediatek,platform = <&afe>;
128 pinctrl-names = "default",
129 "aud_tdm_out_on",
130 "aud_tdm_out_off";
131 pinctrl-0 = <&aud_pins_default>;
132 pinctrl-1 = <&aud_pins_tdm_out_on>;
133 pinctrl-2 = <&aud_pins_tdm_out_off>;
134 status = "okay";
135 };
136
137 btsco: bt-sco {
138 compatible = "linux,bt-sco";
139 };
140
141 wifi_pwrseq: wifi-pwrseq {
142 compatible = "mmc-pwrseq-simple";
143 pinctrl-names = "default";
144 pinctrl-0 = <&wifi_pins_pwrseq>;
145
146 /* Toggle WIFI_ENABLE to reset the chip. */
147 reset-gpios = <&pio 119 1>;
148 };
149
150 wifi_wakeup: wifi-wakeup {
151 compatible = "gpio-keys";
152 pinctrl-names = "default";
153 pinctrl-0 = <&wifi_pins_wakeup>;
154
155 button-wowlan {
156 label = "Wake on WiFi";
157 gpios = <&pio 113 GPIO_ACTIVE_HIGH>;
158 linux,code = <KEY_WAKEUP>;
159 wakeup-source;
160 };
161 };
162
163 tboard_thermistor1: thermal-sensor1 {
164 compatible = "generic-adc-thermal";
165 #thermal-sensor-cells = <0>;
166 io-channels = <&auxadc 0>;
167 io-channel-names = "sensor-channel";
168 temperature-lookup-table = < (-5000) 1553
169 0 1488
170 5000 1412
171 10000 1326
172 15000 1232
173 20000 1132
174 25000 1029
175 30000 925
176 35000 823
177 40000 726
178 45000 635
179 50000 552
180 55000 478
181 60000 411
182 65000 353
183 70000 303
184 75000 260
185 80000 222
186 85000 190
187 90000 163
188 95000 140
189 100000 121
190 105000 104
191 110000 90
192 115000 78
193 120000 67
194 125000 59>;
195 };
196
197 tboard_thermistor2: thermal-sensor2 {
198 compatible = "generic-adc-thermal";
199 #thermal-sensor-cells = <0>;
200 io-channels = <&auxadc 1>;
201 io-channel-names = "sensor-channel";
202 temperature-lookup-table = < (-5000) 1553
203 0 1488
204 5000 1412
205 10000 1326
206 15000 1232
207 20000 1132
208 25000 1029
209 30000 925
210 35000 823
211 40000 726
212 45000 635
213 50000 552
214 55000 478
215 60000 411
216 65000 353
217 70000 303
218 75000 260
219 80000 222
220 85000 190
221 90000 163
222 95000 140
223 100000 121
224 105000 104
225 110000 90
226 115000 78
227 120000 67
228 125000 59>;
229 };
230};
231
232&auxadc {
233 status = "okay";
234};
235
236&cci {
237 proc-supply = <&mt6358_vproc12_reg>;
238};
239
240&cpu0 {
241 proc-supply = <&mt6358_vproc12_reg>;
242};
243
244&cpu1 {
245 proc-supply = <&mt6358_vproc12_reg>;
246};
247
248&cpu2 {
249 proc-supply = <&mt6358_vproc12_reg>;
250};
251
252&cpu3 {
253 proc-supply = <&mt6358_vproc12_reg>;
254};
255
256&cpu4 {
257 proc-supply = <&mt6358_vproc11_reg>;
258};
259
260&cpu5 {
261 proc-supply = <&mt6358_vproc11_reg>;
262};
263
264&cpu6 {
265 proc-supply = <&mt6358_vproc11_reg>;
266};
267
268&cpu7 {
269 proc-supply = <&mt6358_vproc11_reg>;
270};
271
272&dsi0 {
273 status = "okay";
274 #address-cells = <1>;
275 #size-cells = <0>;
276 panel: panel@0 {
277 /* compatible will be set in board dts */
278 reg = <0>;
279 enable-gpios = <&pio 45 0>;
280 pinctrl-names = "default";
281 pinctrl-0 = <&panel_pins_default>;
282 avdd-supply = <&ppvarn_lcd>;
283 avee-supply = <&ppvarp_lcd>;
284 pp1800-supply = <&pp1800_lcd>;
285 backlight = <&backlight_lcd0>;
286 rotation = <270>;
287 port {
288 panel_in: endpoint {
289 remote-endpoint = <&dsi_out>;
290 };
291 };
292 };
293
294 ports {
295 port {
296 dsi_out: endpoint {
297 remote-endpoint = <&panel_in>;
298 };
299 };
300 };
301};
302
303&gic {
304 mediatek,broken-save-restore-fw;
305};
306
307&gpu {
308 mali-supply = <&mt6358_vgpu_reg>;
309};
310
311&i2c0 {
312 pinctrl-names = "default";
313 pinctrl-0 = <&i2c0_pins>;
314 status = "okay";
315 clock-frequency = <400000>;
316 #address-cells = <1>;
317 #size-cells = <0>;
318};
319
320&i2c1 {
321 pinctrl-names = "default";
322 pinctrl-0 = <&i2c1_pins>;
323 status = "okay";
324 clock-frequency = <100000>;
325};
326
327&i2c3 {
328 pinctrl-names = "default";
329 pinctrl-0 = <&i2c3_pins>;
330 status = "okay";
331 clock-frequency = <100000>;
332 #address-cells = <1>;
333 #size-cells = <0>;
334};
335
336&i2c5 {
337 pinctrl-names = "default";
338 pinctrl-0 = <&i2c5_pins>;
339 status = "okay";
340 clock-frequency = <100000>;
341 #address-cells = <1>;
342 #size-cells = <0>;
343};
344
345&i2c6 {
346 pinctrl-names = "default";
347 pinctrl-0 = <&i2c6_pins>;
348 status = "okay";
349 clock-frequency = <100000>;
350};
351
352&mipi_tx0 {
353 status = "okay";
354};
355
356&mmc0 {
357 status = "okay";
358 pinctrl-names = "default", "state_uhs";
359 pinctrl-0 = <&mmc0_pins_default>;
360 pinctrl-1 = <&mmc0_pins_uhs>;
361 bus-width = <8>;
362 max-frequency = <200000000>;
363 cap-mmc-highspeed;
364 mmc-hs200-1_8v;
365 mmc-hs400-1_8v;
366 cap-mmc-hw-reset;
367 no-sdio;
368 no-sd;
369 hs400-ds-delay = <0x12814>;
370 vmmc-supply = <&mt6358_vemc_reg>;
371 vqmmc-supply = <&mt6358_vio18_reg>;
372 assigned-clocks = <&topckgen CLK_TOP_MUX_MSDC50_0>;
373 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_CK>;
374 non-removable;
375};
376
377&mmc1 {
378 status = "okay";
379 pinctrl-names = "default", "state_uhs";
380 pinctrl-0 = <&mmc1_pins_default>;
381 pinctrl-1 = <&mmc1_pins_uhs>;
382 vmmc-supply = <&mmc1_fixed_power>;
383 vqmmc-supply = <&mmc1_fixed_io>;
384 mmc-pwrseq = <&wifi_pwrseq>;
385 bus-width = <4>;
386 max-frequency = <200000000>;
387 cap-sd-highspeed;
388 sd-uhs-sdr50;
389 sd-uhs-sdr104;
390 keep-power-in-suspend;
391 wakeup-source;
392 cap-sdio-irq;
393 non-removable;
394 no-mmc;
395 no-sd;
396 assigned-clocks = <&topckgen CLK_TOP_MUX_MSDC30_1>;
397 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
398 #address-cells = <1>;
399 #size-cells = <0>;
400
401 qca_wifi: qca-wifi@1 {
402 compatible = "qcom,ath10k";
403 reg = <1>;
404 };
405};
406
407&mt6358_vdram2_reg {
408 regulator-always-on;
409};
410
411&mt6358codec {
412 Avdd-supply = <&mt6358_vaud28_reg>;
413};
414
415&mt6358regulator {
416 vsys-ldo1-supply = <&reg_vsys>;
417 vsys-ldo2-supply = <&reg_vsys>;
418 vsys-ldo3-supply = <&reg_vsys>;
419 vsys-vcore-supply = <&reg_vsys>;
420 vsys-vdram1-supply = <&reg_vsys>;
421 vsys-vgpu-supply = <&reg_vsys>;
422 vsys-vmodem-supply = <&reg_vsys>;
423 vsys-vpa-supply = <&reg_vsys>;
424 vsys-vproc11-supply = <&reg_vsys>;
425 vsys-vproc12-supply = <&reg_vsys>;
426 vsys-vs1-supply = <&reg_vsys>;
427 vsys-vs2-supply = <&reg_vsys>;
428 vs1-ldo1-supply = <&mt6358_vs1_reg>;
429 vs2-ldo1-supply = <&mt6358_vdram1_reg>;
430 vs2-ldo2-supply = <&mt6358_vs2_reg>;
431 vs2-ldo3-supply = <&mt6358_vs2_reg>;
432 vs2-ldo4-supply = <&mt6358_vs2_reg>;
433};
434
435&mt6358_vgpu_reg {
436 regulator-min-microvolt = <625000>;
437 regulator-max-microvolt = <900000>;
438
439 regulator-coupled-with = <&mt6358_vsram_gpu_reg>;
440 regulator-coupled-max-spread = <100000>;
441};
442
443&mt6358_vsim1_reg {
444 regulator-min-microvolt = <2700000>;
445 regulator-max-microvolt = <2700000>;
446};
447
448&mt6358_vsim2_reg {
449 regulator-min-microvolt = <2700000>;
450 regulator-max-microvolt = <2700000>;
451};
452
453&mt6358_vsram_gpu_reg {
454 regulator-min-microvolt = <850000>;
455 regulator-max-microvolt = <1000000>;
456
457 regulator-coupled-with = <&mt6358_vgpu_reg>;
458 regulator-coupled-max-spread = <100000>;
459};
460
461&pio {
462 aud_pins_default: audiopins {
463 pins-bus {
464 pinmux = <PINMUX_GPIO97__FUNC_I2S2_MCK>,
465 <PINMUX_GPIO98__FUNC_I2S2_BCK>,
466 <PINMUX_GPIO101__FUNC_I2S2_LRCK>,
467 <PINMUX_GPIO102__FUNC_I2S2_DI>,
468 <PINMUX_GPIO3__FUNC_I2S3_DO>, /*i2s to da7219/max98357*/
469 <PINMUX_GPIO89__FUNC_I2S5_BCK>,
470 <PINMUX_GPIO90__FUNC_I2S5_LRCK>,
471 <PINMUX_GPIO91__FUNC_I2S5_DO>,
472 <PINMUX_GPIO174__FUNC_I2S0_DI>, /*i2s to wifi/bt*/
473 <PINMUX_GPIO136__FUNC_AUD_CLK_MOSI>,
474 <PINMUX_GPIO137__FUNC_AUD_SYNC_MOSI>,
475 <PINMUX_GPIO138__FUNC_AUD_DAT_MOSI0>,
476 <PINMUX_GPIO139__FUNC_AUD_DAT_MOSI1>,
477 <PINMUX_GPIO140__FUNC_AUD_CLK_MISO>,
478 <PINMUX_GPIO141__FUNC_AUD_SYNC_MISO>,
479 <PINMUX_GPIO142__FUNC_AUD_DAT_MISO0>,
480 <PINMUX_GPIO143__FUNC_AUD_DAT_MISO1>; /*mtkaif3.0*/
481 };
482 };
483
484 aud_pins_tdm_out_on: audiotdmouton {
485 pins-bus {
486 pinmux = <PINMUX_GPIO169__FUNC_TDM_BCK_2ND>,
487 <PINMUX_GPIO170__FUNC_TDM_LRCK_2ND>,
488 <PINMUX_GPIO171__FUNC_TDM_DATA0_2ND>,
489 <PINMUX_GPIO172__FUNC_TDM_DATA1_2ND>,
490 <PINMUX_GPIO173__FUNC_TDM_DATA2_2ND>,
491 <PINMUX_GPIO10__FUNC_TDM_DATA3>; /*8ch-i2s to it6505*/
492 drive-strength = <MTK_DRIVE_6mA>;
493 };
494 };
495
496 aud_pins_tdm_out_off: audiotdmoutoff {
497 pins-bus {
498 pinmux = <PINMUX_GPIO169__FUNC_GPIO169>,
499 <PINMUX_GPIO170__FUNC_GPIO170>,
500 <PINMUX_GPIO171__FUNC_GPIO171>,
501 <PINMUX_GPIO172__FUNC_GPIO172>,
502 <PINMUX_GPIO173__FUNC_GPIO173>,
503 <PINMUX_GPIO10__FUNC_GPIO10>;
504 input-enable;
505 bias-pull-down;
506 drive-strength = <MTK_DRIVE_2mA>;
507 };
508 };
509
510 bt_pins: bt-pins {
511 pins-bt-en {
512 pinmux = <PINMUX_GPIO120__FUNC_GPIO120>;
513 output-low;
514 };
515 };
516
517 ec_ap_int_odl: ec-ap-int-odl {
518 pins1 {
519 pinmux = <PINMUX_GPIO151__FUNC_GPIO151>;
520 input-enable;
521 bias-pull-up;
522 };
523 };
524
525 h1_int_od_l: h1-int-od-l {
526 pins1 {
527 pinmux = <PINMUX_GPIO153__FUNC_GPIO153>;
528 input-enable;
529 };
530 };
531
532 i2c0_pins: i2c0 {
533 pins-bus {
534 pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
535 <PINMUX_GPIO83__FUNC_SCL0>;
536 mediatek,pull-up-adv = <3>;
537 mediatek,drive-strength-adv = <00>;
538 };
539 };
540
541 i2c1_pins: i2c1 {
542 pins-bus {
543 pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
544 <PINMUX_GPIO84__FUNC_SCL1>;
545 mediatek,pull-up-adv = <3>;
546 mediatek,drive-strength-adv = <00>;
547 };
548 };
549
550 i2c2_pins: i2c2 {
551 pins-bus {
552 pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
553 <PINMUX_GPIO104__FUNC_SDA2>;
554 bias-disable;
555 mediatek,drive-strength-adv = <00>;
556 };
557 };
558
559 i2c3_pins: i2c3 {
560 pins-bus {
561 pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
562 <PINMUX_GPIO51__FUNC_SDA3>;
563 mediatek,pull-up-adv = <3>;
564 mediatek,drive-strength-adv = <00>;
565 };
566 };
567
568 i2c4_pins: i2c4 {
569 pins-bus {
570 pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
571 <PINMUX_GPIO106__FUNC_SDA4>;
572 bias-disable;
573 mediatek,drive-strength-adv = <00>;
574 };
575 };
576
577 i2c5_pins: i2c5 {
578 pins-bus {
579 pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
580 <PINMUX_GPIO49__FUNC_SDA5>;
581 mediatek,pull-up-adv = <3>;
582 mediatek,drive-strength-adv = <00>;
583 };
584 };
585
586 i2c6_pins: i2c6 {
587 pins-bus {
588 pinmux = <PINMUX_GPIO11__FUNC_SCL6>,
589 <PINMUX_GPIO12__FUNC_SDA6>;
590 bias-disable;
591 };
592 };
593
594 mmc0_pins_default: mmc0-pins-default {
595 pins-cmd-dat {
596 pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
597 <PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
598 <PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
599 <PINMUX_GPIO132__FUNC_MSDC0_DAT3>,
600 <PINMUX_GPIO126__FUNC_MSDC0_DAT4>,
601 <PINMUX_GPIO129__FUNC_MSDC0_DAT5>,
602 <PINMUX_GPIO127__FUNC_MSDC0_DAT6>,
603 <PINMUX_GPIO130__FUNC_MSDC0_DAT7>,
604 <PINMUX_GPIO122__FUNC_MSDC0_CMD>;
605 input-enable;
606 drive-strength = <MTK_DRIVE_14mA>;
607 mediatek,pull-up-adv = <01>;
608 };
609
610 pins-clk {
611 pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
612 drive-strength = <MTK_DRIVE_14mA>;
613 mediatek,pull-down-adv = <10>;
614 };
615
616 pins-rst {
617 pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
618 drive-strength = <MTK_DRIVE_14mA>;
619 mediatek,pull-down-adv = <01>;
620 };
621 };
622
623 mmc0_pins_uhs: mmc0-pins-uhs {
624 pins-cmd-dat {
625 pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
626 <PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
627 <PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
628 <PINMUX_GPIO132__FUNC_MSDC0_DAT3>,
629 <PINMUX_GPIO126__FUNC_MSDC0_DAT4>,
630 <PINMUX_GPIO129__FUNC_MSDC0_DAT5>,
631 <PINMUX_GPIO127__FUNC_MSDC0_DAT6>,
632 <PINMUX_GPIO130__FUNC_MSDC0_DAT7>,
633 <PINMUX_GPIO122__FUNC_MSDC0_CMD>;
634 input-enable;
635 drive-strength = <MTK_DRIVE_14mA>;
636 mediatek,pull-up-adv = <01>;
637 };
638
639 pins-clk {
640 pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
641 drive-strength = <MTK_DRIVE_14mA>;
642 mediatek,pull-down-adv = <10>;
643 };
644
645 pins-ds {
646 pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
647 drive-strength = <MTK_DRIVE_14mA>;
648 mediatek,pull-down-adv = <10>;
649 };
650
651 pins-rst {
652 pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
653 drive-strength = <MTK_DRIVE_14mA>;
654 mediatek,pull-up-adv = <01>;
655 };
656 };
657
658 mmc1_pins_default: mmc1-pins-default {
659 pins-cmd-dat {
660 pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
661 <PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
662 <PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
663 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
664 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
665 input-enable;
666 mediatek,pull-up-adv = <10>;
667 };
668
669 pins-clk {
670 pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
671 input-enable;
672 mediatek,pull-down-adv = <10>;
673 };
674 };
675
676 mmc1_pins_uhs: mmc1-pins-uhs {
677 pins-cmd-dat {
678 pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
679 <PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
680 <PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
681 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
682 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
683 drive-strength = <MTK_DRIVE_6mA>;
684 input-enable;
685 mediatek,pull-up-adv = <10>;
686 };
687
688 pins-clk {
689 pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
690 drive-strength = <MTK_DRIVE_8mA>;
691 mediatek,pull-down-adv = <10>;
692 input-enable;
693 };
694 };
695
696 panel_pins_default: panel-pins-default {
697 panel-reset {
698 pinmux = <PINMUX_GPIO45__FUNC_GPIO45>;
699 output-low;
700 bias-pull-up;
701 };
702 };
703
704 pwm0_pin_default: pwm0-pin-default {
705 pins1 {
706 pinmux = <PINMUX_GPIO176__FUNC_GPIO176>;
707 output-high;
708 bias-pull-up;
709 };
710 pins2 {
711 pinmux = <PINMUX_GPIO43__FUNC_DISP_PWM>;
712 };
713 };
714
715 scp_pins: scp {
716 pins-scp-uart {
717 pinmux = <PINMUX_GPIO110__FUNC_TP_URXD1_AO>,
718 <PINMUX_GPIO112__FUNC_TP_UTXD1_AO>;
719 };
720 };
721
722 spi0_pins: spi0 {
723 pins-spi {
724 pinmux = <PINMUX_GPIO85__FUNC_SPI0_MI>,
725 <PINMUX_GPIO86__FUNC_GPIO86>,
726 <PINMUX_GPIO87__FUNC_SPI0_MO>,
727 <PINMUX_GPIO88__FUNC_SPI0_CLK>;
728 bias-disable;
729 };
730 };
731
732 spi1_pins: spi1 {
733 pins-spi {
734 pinmux = <PINMUX_GPIO161__FUNC_SPI1_A_MI>,
735 <PINMUX_GPIO162__FUNC_SPI1_A_CSB>,
736 <PINMUX_GPIO163__FUNC_SPI1_A_MO>,
737 <PINMUX_GPIO164__FUNC_SPI1_A_CLK>;
738 bias-disable;
739 };
740 };
741
742 spi2_pins: spi2 {
743 pins-spi {
744 pinmux = <PINMUX_GPIO0__FUNC_SPI2_CSB>,
745 <PINMUX_GPIO1__FUNC_SPI2_MO>,
746 <PINMUX_GPIO2__FUNC_SPI2_CLK>;
747 bias-disable;
748 };
749 pins-spi-mi {
750 pinmux = <PINMUX_GPIO94__FUNC_SPI2_MI>;
751 mediatek,pull-down-adv = <00>;
752 };
753 };
754
755 spi3_pins: spi3 {
756 pins-spi {
757 pinmux = <PINMUX_GPIO21__FUNC_SPI3_MI>,
758 <PINMUX_GPIO22__FUNC_SPI3_CSB>,
759 <PINMUX_GPIO23__FUNC_SPI3_MO>,
760 <PINMUX_GPIO24__FUNC_SPI3_CLK>;
761 bias-disable;
762 };
763 };
764
765 spi4_pins: spi4 {
766 pins-spi {
767 pinmux = <PINMUX_GPIO17__FUNC_SPI4_MI>,
768 <PINMUX_GPIO18__FUNC_SPI4_CSB>,
769 <PINMUX_GPIO19__FUNC_SPI4_MO>,
770 <PINMUX_GPIO20__FUNC_SPI4_CLK>;
771 bias-disable;
772 };
773 };
774
775 spi5_pins: spi5 {
776 pins-spi {
777 pinmux = <PINMUX_GPIO13__FUNC_SPI5_MI>,
778 <PINMUX_GPIO14__FUNC_SPI5_CSB>,
779 <PINMUX_GPIO15__FUNC_SPI5_MO>,
780 <PINMUX_GPIO16__FUNC_SPI5_CLK>;
781 bias-disable;
782 };
783 };
784
785 uart0_pins_default: uart0-pins-default {
786 pins-rx {
787 pinmux = <PINMUX_GPIO95__FUNC_URXD0>;
788 input-enable;
789 bias-pull-up;
790 };
791 pins-tx {
792 pinmux = <PINMUX_GPIO96__FUNC_UTXD0>;
793 };
794 };
795
796 uart1_pins_default: uart1-pins-default {
797 pins-rx {
798 pinmux = <PINMUX_GPIO121__FUNC_URXD1>;
799 input-enable;
800 bias-pull-up;
801 };
802 pins-tx {
803 pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
804 };
805 pins-rts {
806 pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
807 output-enable;
808 };
809 pins-cts {
810 pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
811 input-enable;
812 };
813 };
814
815 uart1_pins_sleep: uart1-pins-sleep {
816 pins-rx {
817 pinmux = <PINMUX_GPIO121__FUNC_GPIO121>;
818 input-enable;
819 bias-pull-up;
820 };
821 pins-tx {
822 pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
823 };
824 pins-rts {
825 pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
826 output-enable;
827 };
828 pins-cts {
829 pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
830 input-enable;
831 };
832 };
833
834 wifi_pins_pwrseq: wifi-pins-pwrseq {
835 pins-wifi-enable {
836 pinmux = <PINMUX_GPIO119__FUNC_GPIO119>;
837 output-low;
838 };
839 };
840
841 wifi_pins_wakeup: wifi-pins-wakeup {
842 pins-wifi-wakeup {
843 pinmux = <PINMUX_GPIO113__FUNC_GPIO113>;
844 input-enable;
845 };
846 };
847};
848
849&pwm0 {
850 status = "okay";
851 pinctrl-names = "default";
852 pinctrl-0 = <&pwm0_pin_default>;
853};
854
855&scp {
856 status = "okay";
857
858 firmware-name = "mediatek/mt8183/scp.img";
859 pinctrl-names = "default";
860 pinctrl-0 = <&scp_pins>;
861
862 cros-ec-rpmsg {
863 compatible = "google,cros-ec-rpmsg";
864 mediatek,rpmsg-name = "cros-ec-rpmsg";
865 };
866};
867
868&mfg_async {
869 domain-supply = <&mt6358_vsram_gpu_reg>;
870};
871
872&mfg {
873 domain-supply = <&mt6358_vgpu_reg>;
874};
875
876&soc_data {
877 status = "okay";
878};
879
880&spi0 {
881 pinctrl-names = "default";
882 pinctrl-0 = <&spi0_pins>;
883 mediatek,pad-select = <0>;
884 status = "okay";
885 cs-gpios = <&pio 86 GPIO_ACTIVE_LOW>;
886
887 cr50@0 {
888 compatible = "google,cr50";
889 reg = <0>;
890 spi-max-frequency = <1000000>;
891 pinctrl-names = "default";
892 pinctrl-0 = <&h1_int_od_l>;
893 interrupt-parent = <&pio>;
894 interrupts = <153 IRQ_TYPE_EDGE_RISING>;
895 };
896};
897
898&spi1 {
899 pinctrl-names = "default";
900 pinctrl-0 = <&spi1_pins>;
901 mediatek,pad-select = <0>;
902 status = "okay";
903
904 w25q64dw: flash@0 {
905 compatible = "winbond,w25q64dw", "jedec,spi-nor";
906 reg = <0>;
907 spi-max-frequency = <25000000>;
908 };
909};
910
911&spi2 {
912 pinctrl-names = "default";
913 pinctrl-0 = <&spi2_pins>;
914 mediatek,pad-select = <0>;
915 status = "okay";
916
917 cros_ec: cros-ec@0 {
918 compatible = "google,cros-ec-spi";
919 reg = <0>;
920 spi-max-frequency = <3000000>;
921 interrupt-parent = <&pio>;
922 interrupts = <151 IRQ_TYPE_LEVEL_LOW>;
923 pinctrl-names = "default";
924 pinctrl-0 = <&ec_ap_int_odl>;
925
926 i2c_tunnel: i2c-tunnel {
927 compatible = "google,cros-ec-i2c-tunnel";
928 google,remote-bus = <1>;
929 #address-cells = <1>;
930 #size-cells = <0>;
931 };
932
933 usbc_extcon: extcon0 {
934 compatible = "google,extcon-usbc-cros-ec";
935 google,usb-port-id = <0>;
936 };
937
938 cbas {
939 compatible = "google,cros-cbas";
940 };
941
942 typec {
943 compatible = "google,cros-ec-typec";
944 #address-cells = <1>;
945 #size-cells = <0>;
946
947 usb_c0: connector@0 {
948 compatible = "usb-c-connector";
949 reg = <0>;
950 power-role = "dual";
951 data-role = "host";
952 try-power-role = "sink";
953 };
954 };
955 };
956};
957
958&spi3 {
959 pinctrl-names = "default";
960 pinctrl-0 = <&spi3_pins>;
961 mediatek,pad-select = <0>;
962 status = "disabled";
963};
964
965&spi4 {
966 pinctrl-names = "default";
967 pinctrl-0 = <&spi4_pins>;
968 mediatek,pad-select = <0>;
969 status = "disabled";
970};
971
972&spi5 {
973 pinctrl-names = "default";
974 pinctrl-0 = <&spi5_pins>;
975 mediatek,pad-select = <0>;
976 status = "disabled";
977};
978
979&ssusb {
980 dr_mode = "host";
981 wakeup-source;
982 vusb33-supply = <&mt6358_vusb_reg>;
983 status = "okay";
984};
985
986&thermal_zones {
987 tboard1 {
988 polling-delay = <1000>; /* milliseconds */
989 polling-delay-passive = <0>; /* milliseconds */
990 thermal-sensors = <&tboard_thermistor1>;
991 };
992
993 tboard2 {
994 polling-delay = <1000>; /* milliseconds */
995 polling-delay-passive = <0>; /* milliseconds */
996 thermal-sensors = <&tboard_thermistor2>;
997 };
998};
999
1000&u3phy {
1001 status = "okay";
1002};
1003
1004&uart0 {
1005 pinctrl-names = "default";
1006 pinctrl-0 = <&uart0_pins_default>;
1007 status = "okay";
1008};
1009
1010&uart1 {
1011 pinctrl-names = "default", "sleep";
1012 pinctrl-0 = <&uart1_pins_default>;
1013 pinctrl-1 = <&uart1_pins_sleep>;
1014 status = "okay";
1015 /delete-property/ interrupts;
1016 interrupts-extended = <&sysirq GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>,
1017 <&pio 121 IRQ_TYPE_EDGE_FALLING>;
1018
1019 bluetooth: bluetooth {
1020 pinctrl-names = "default";
1021 pinctrl-0 = <&bt_pins>;
1022 status = "okay";
1023 compatible = "qcom,qca6174-bt";
1024 enable-gpios = <&pio 120 0>;
1025 clocks = <&clk32k>;
1026 firmware-name = "nvm_00440302_i2s.bin";
1027 };
1028};
1029
1030&usb_host {
1031 #address-cells = <1>;
1032 #size-cells = <0>;
1033 vusb33-supply = <&mt6358_vusb_reg>;
1034 status = "okay";
1035
1036 hub@1 {
1037 compatible = "usb5e3,610";
1038 reg = <1>;
1039 };
1040};
1041
1042#include <arm/cros-ec-sbs.dtsi>