1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 * Copyright (c) 2018 MediaTek Inc.
4 * Author: Ben Ho <ben.ho@mediatek.com>
5 * Erin Lo <erin.lo@mediatek.com>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/input/input.h>
10 #include "mt8183.dtsi"
11 #include "mt6358.dtsi"
19 stdout-path = "serial0:115200n8";
22 backlight_lcd0: backlight_lcd0 {
23 compatible = "pwm-backlight";
24 pwms = <&pwm0 0 500000>;
25 power-supply = <&bl_pp5000>;
26 enable-gpios = <&pio 176 0>;
27 brightness-levels = <0 1023>;
28 num-interpolated-steps = <1023>;
29 default-brightness-level = <576>;
34 device_type = "memory";
35 reg = <0 0x40000000 0 0x80000000>;
39 compatible = "fixed-clock";
41 clock-frequency = <32768>;
42 clock-output-names = "clk32k";
45 it6505_pp18_reg: regulator0 {
46 compatible = "regulator-fixed";
47 regulator-name = "it6505_pp18";
48 regulator-min-microvolt = <1800000>;
49 regulator-max-microvolt = <1800000>;
54 lcd_pp3300: regulator1 {
55 compatible = "regulator-fixed";
56 regulator-name = "lcd_pp3300";
57 regulator-min-microvolt = <3300000>;
58 regulator-max-microvolt = <3300000>;
63 bl_pp5000: regulator2 {
64 compatible = "regulator-fixed";
65 regulator-name = "bl_pp5000";
66 regulator-min-microvolt = <5000000>;
67 regulator-max-microvolt = <5000000>;
72 mmc1_fixed_power: regulator3 {
73 compatible = "regulator-fixed";
74 regulator-name = "mmc1_power";
75 regulator-min-microvolt = <3300000>;
76 regulator-max-microvolt = <3300000>;
79 mmc1_fixed_io: regulator4 {
80 compatible = "regulator-fixed";
81 regulator-name = "mmc1_io";
82 regulator-min-microvolt = <1800000>;
83 regulator-max-microvolt = <1800000>;
86 pp1800_alw: regulator5 {
87 compatible = "regulator-fixed";
88 regulator-name = "pp1800_alw";
91 regulator-min-microvolt = <1800000>;
92 regulator-max-microvolt = <1800000>;
95 pp3300_alw: regulator6 {
96 compatible = "regulator-fixed";
97 regulator-name = "pp3300_alw";
100 regulator-min-microvolt = <3300000>;
101 regulator-max-microvolt = <3300000>;
104 reserved_memory: reserved-memory {
105 #address-cells = <2>;
109 scp_mem_reserved: scp_mem_region {
110 compatible = "shared-dma-pool";
111 reg = <0 0x50000000 0 0x2900000>;
117 compatible = "maxim,max98357a";
118 sdmode-gpios = <&pio 175 0>;
122 compatible = "linux,bt-sco";
125 wifi_pwrseq: wifi-pwrseq {
126 compatible = "mmc-pwrseq-simple";
127 pinctrl-names = "default";
128 pinctrl-0 = <&wifi_pins_pwrseq>;
130 /* Toggle WIFI_ENABLE to reset the chip. */
131 reset-gpios = <&pio 119 1>;
134 wifi_wakeup: wifi-wakeup {
135 compatible = "gpio-keys";
136 pinctrl-names = "default";
137 pinctrl-0 = <&wifi_pins_wakeup>;
140 label = "Wake on WiFi";
141 gpios = <&pio 113 GPIO_ACTIVE_HIGH>;
142 linux,code = <KEY_WAKEUP>;
147 tboard_thermistor1: thermal-sensor1 {
148 compatible = "generic-adc-thermal";
149 #thermal-sensor-cells = <0>;
150 io-channels = <&auxadc 0>;
151 io-channel-names = "sensor-channel";
152 temperature-lookup-table = < (-5000) 4241
181 tboard_thermistor2: thermal-sensor2 {
182 compatible = "generic-adc-thermal";
183 #thermal-sensor-cells = <0>;
184 io-channels = <&auxadc 1>;
185 io-channel-names = "sensor-channel";
186 temperature-lookup-table = < (-5000) 4241
221 proc-supply = <&mt6358_vproc12_reg>;
225 proc-supply = <&mt6358_vproc12_reg>;
229 proc-supply = <&mt6358_vproc12_reg>;
233 proc-supply = <&mt6358_vproc12_reg>;
237 proc-supply = <&mt6358_vproc11_reg>;
241 proc-supply = <&mt6358_vproc11_reg>;
245 proc-supply = <&mt6358_vproc11_reg>;
249 proc-supply = <&mt6358_vproc11_reg>;
253 pinctrl-names = "default";
254 pinctrl-0 = <&i2c0_pins>;
256 clock-frequency = <400000>;
257 #address-cells = <1>;
262 pinctrl-names = "default";
263 pinctrl-0 = <&i2c1_pins>;
265 clock-frequency = <100000>;
269 pinctrl-names = "default";
270 pinctrl-0 = <&i2c3_pins>;
272 clock-frequency = <100000>;
273 #address-cells = <1>;
278 pinctrl-names = "default";
279 pinctrl-0 = <&i2c5_pins>;
281 clock-frequency = <100000>;
282 #address-cells = <1>;
287 pinctrl-names = "default";
288 pinctrl-0 = <&i2c6_pins>;
290 clock-frequency = <100000>;
295 pinctrl-names = "default", "state_uhs";
296 pinctrl-0 = <&mmc0_pins_default>;
297 pinctrl-1 = <&mmc0_pins_uhs>;
299 max-frequency = <200000000>;
306 hs400-ds-delay = <0x12814>;
307 vmmc-supply = <&mt6358_vemc_reg>;
308 vqmmc-supply = <&mt6358_vio18_reg>;
309 assigned-clocks = <&topckgen CLK_TOP_MUX_MSDC50_0>;
310 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_CK>;
316 pinctrl-names = "default", "state_uhs";
317 pinctrl-0 = <&mmc1_pins_default>;
318 pinctrl-1 = <&mmc1_pins_uhs>;
319 vmmc-supply = <&mmc1_fixed_power>;
320 vqmmc-supply = <&mmc1_fixed_io>;
321 mmc-pwrseq = <&wifi_pwrseq>;
323 max-frequency = <200000000>;
328 keep-power-in-suspend;
334 assigned-clocks = <&topckgen CLK_TOP_MUX_MSDC30_1>;
335 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
336 #address-cells = <1>;
339 qca_wifi: qca-wifi@1 {
340 compatible = "qcom,ath10k";
350 Avdd-supply = <&mt6358_vaud28_reg>;
354 regulator-min-microvolt = <2700000>;
355 regulator-max-microvolt = <2700000>;
359 regulator-min-microvolt = <2700000>;
360 regulator-max-microvolt = <2700000>;
366 pinmux = <PINMUX_GPIO120__FUNC_GPIO120>;
371 ec_ap_int_odl: ec_ap_int_odl {
373 pinmux = <PINMUX_GPIO151__FUNC_GPIO151>;
379 h1_int_od_l: h1_int_od_l {
381 pinmux = <PINMUX_GPIO153__FUNC_GPIO153>;
388 pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
389 <PINMUX_GPIO83__FUNC_SCL0>;
390 mediatek,pull-up-adv = <3>;
391 mediatek,drive-strength-adv = <00>;
397 pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
398 <PINMUX_GPIO84__FUNC_SCL1>;
399 mediatek,pull-up-adv = <3>;
400 mediatek,drive-strength-adv = <00>;
406 pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
407 <PINMUX_GPIO104__FUNC_SDA2>;
409 mediatek,drive-strength-adv = <00>;
415 pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
416 <PINMUX_GPIO51__FUNC_SDA3>;
417 mediatek,pull-up-adv = <3>;
418 mediatek,drive-strength-adv = <00>;
424 pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
425 <PINMUX_GPIO106__FUNC_SDA4>;
427 mediatek,drive-strength-adv = <00>;
433 pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
434 <PINMUX_GPIO49__FUNC_SDA5>;
435 mediatek,pull-up-adv = <3>;
436 mediatek,drive-strength-adv = <00>;
442 pinmux = <PINMUX_GPIO11__FUNC_SCL6>,
443 <PINMUX_GPIO12__FUNC_SDA6>;
448 mmc0_pins_default: mmc0-pins-default {
450 pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
451 <PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
452 <PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
453 <PINMUX_GPIO132__FUNC_MSDC0_DAT3>,
454 <PINMUX_GPIO126__FUNC_MSDC0_DAT4>,
455 <PINMUX_GPIO129__FUNC_MSDC0_DAT5>,
456 <PINMUX_GPIO127__FUNC_MSDC0_DAT6>,
457 <PINMUX_GPIO130__FUNC_MSDC0_DAT7>,
458 <PINMUX_GPIO122__FUNC_MSDC0_CMD>;
460 drive-strength = <MTK_DRIVE_14mA>;
461 mediatek,pull-up-adv = <01>;
465 pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
466 drive-strength = <MTK_DRIVE_14mA>;
467 mediatek,pull-down-adv = <10>;
471 pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
472 drive-strength = <MTK_DRIVE_14mA>;
473 mediatek,pull-down-adv = <01>;
477 mmc0_pins_uhs: mmc0-pins-uhs {
479 pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
480 <PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
481 <PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
482 <PINMUX_GPIO132__FUNC_MSDC0_DAT3>,
483 <PINMUX_GPIO126__FUNC_MSDC0_DAT4>,
484 <PINMUX_GPIO129__FUNC_MSDC0_DAT5>,
485 <PINMUX_GPIO127__FUNC_MSDC0_DAT6>,
486 <PINMUX_GPIO130__FUNC_MSDC0_DAT7>,
487 <PINMUX_GPIO122__FUNC_MSDC0_CMD>;
489 drive-strength = <MTK_DRIVE_14mA>;
490 mediatek,pull-up-adv = <01>;
494 pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
495 drive-strength = <MTK_DRIVE_14mA>;
496 mediatek,pull-down-adv = <10>;
500 pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
501 drive-strength = <MTK_DRIVE_14mA>;
502 mediatek,pull-down-adv = <10>;
506 pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
507 drive-strength = <MTK_DRIVE_14mA>;
508 mediatek,pull-up-adv = <01>;
512 mmc1_pins_default: mmc1-pins-default {
514 pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
515 <PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
516 <PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
517 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
518 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
520 mediatek,pull-up-adv = <10>;
524 pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
526 mediatek,pull-down-adv = <10>;
530 mmc1_pins_uhs: mmc1-pins-uhs {
532 pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
533 <PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
534 <PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
535 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
536 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
537 drive-strength = <MTK_DRIVE_6mA>;
539 mediatek,pull-up-adv = <10>;
543 pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
544 drive-strength = <MTK_DRIVE_8mA>;
545 mediatek,pull-down-adv = <10>;
550 pwm0_pin_default: pwm0_pin_default {
552 pinmux = <PINMUX_GPIO176__FUNC_GPIO176>;
557 pinmux = <PINMUX_GPIO43__FUNC_DISP_PWM>;
563 pinmux = <PINMUX_GPIO110__FUNC_TP_URXD1_AO>,
564 <PINMUX_GPIO112__FUNC_TP_UTXD1_AO>;
570 pinmux = <PINMUX_GPIO85__FUNC_SPI0_MI>,
571 <PINMUX_GPIO86__FUNC_GPIO86>,
572 <PINMUX_GPIO87__FUNC_SPI0_MO>,
573 <PINMUX_GPIO88__FUNC_SPI0_CLK>;
580 pinmux = <PINMUX_GPIO161__FUNC_SPI1_A_MI>,
581 <PINMUX_GPIO162__FUNC_SPI1_A_CSB>,
582 <PINMUX_GPIO163__FUNC_SPI1_A_MO>,
583 <PINMUX_GPIO164__FUNC_SPI1_A_CLK>;
590 pinmux = <PINMUX_GPIO0__FUNC_SPI2_CSB>,
591 <PINMUX_GPIO1__FUNC_SPI2_MO>,
592 <PINMUX_GPIO2__FUNC_SPI2_CLK>;
596 pinmux = <PINMUX_GPIO94__FUNC_SPI2_MI>;
597 mediatek,pull-down-adv = <00>;
603 pinmux = <PINMUX_GPIO21__FUNC_SPI3_MI>,
604 <PINMUX_GPIO22__FUNC_SPI3_CSB>,
605 <PINMUX_GPIO23__FUNC_SPI3_MO>,
606 <PINMUX_GPIO24__FUNC_SPI3_CLK>;
613 pinmux = <PINMUX_GPIO17__FUNC_SPI4_MI>,
614 <PINMUX_GPIO18__FUNC_SPI4_CSB>,
615 <PINMUX_GPIO19__FUNC_SPI4_MO>,
616 <PINMUX_GPIO20__FUNC_SPI4_CLK>;
623 pinmux = <PINMUX_GPIO13__FUNC_SPI5_MI>,
624 <PINMUX_GPIO14__FUNC_SPI5_CSB>,
625 <PINMUX_GPIO15__FUNC_SPI5_MO>,
626 <PINMUX_GPIO16__FUNC_SPI5_CLK>;
631 uart0_pins_default: uart0-pins-default {
633 pinmux = <PINMUX_GPIO95__FUNC_URXD0>;
638 pinmux = <PINMUX_GPIO96__FUNC_UTXD0>;
642 uart1_pins_default: uart1-pins-default {
644 pinmux = <PINMUX_GPIO121__FUNC_URXD1>;
649 pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
652 pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
656 pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
661 uart1_pins_sleep: uart1-pins-sleep {
663 pinmux = <PINMUX_GPIO121__FUNC_GPIO121>;
668 pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
671 pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
675 pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
680 wifi_pins_pwrseq: wifi-pins-pwrseq {
682 pinmux = <PINMUX_GPIO119__FUNC_GPIO119>;
687 wifi_pins_wakeup: wifi-pins-wakeup {
689 pinmux = <PINMUX_GPIO113__FUNC_GPIO113>;
697 pinctrl-names = "default";
698 pinctrl-0 = <&pwm0_pin_default>;
703 pinctrl-names = "default";
704 pinctrl-0 = <&scp_pins>;
707 compatible = "google,cros-ec-rpmsg";
708 mtk,rpmsg-name = "cros-ec-rpmsg";
717 pinctrl-names = "default";
718 pinctrl-0 = <&spi0_pins>;
719 mediatek,pad-select = <0>;
721 cs-gpios = <&pio 86 GPIO_ACTIVE_LOW>;
724 compatible = "google,cr50";
726 spi-max-frequency = <1000000>;
727 pinctrl-names = "default";
728 pinctrl-0 = <&h1_int_od_l>;
729 interrupt-parent = <&pio>;
730 interrupts = <153 IRQ_TYPE_EDGE_RISING>;
735 pinctrl-names = "default";
736 pinctrl-0 = <&spi1_pins>;
737 mediatek,pad-select = <0>;
740 w25q64dw: spi-flash@0 {
741 compatible = "winbond,w25q64dw", "jedec,spi-nor";
743 spi-max-frequency = <25000000>;
748 pinctrl-names = "default";
749 pinctrl-0 = <&spi2_pins>;
750 mediatek,pad-select = <0>;
754 compatible = "google,cros-ec-spi";
756 spi-max-frequency = <3000000>;
757 interrupt-parent = <&pio>;
758 interrupts = <151 IRQ_TYPE_LEVEL_LOW>;
759 pinctrl-names = "default";
760 pinctrl-0 = <&ec_ap_int_odl>;
762 i2c_tunnel: i2c-tunnel {
763 compatible = "google,cros-ec-i2c-tunnel";
764 google,remote-bus = <1>;
765 #address-cells = <1>;
769 usbc_extcon: extcon0 {
770 compatible = "google,extcon-usbc-cros-ec";
771 google,usb-port-id = <0>;
777 pinctrl-names = "default";
778 pinctrl-0 = <&spi3_pins>;
779 mediatek,pad-select = <0>;
784 pinctrl-names = "default";
785 pinctrl-0 = <&spi4_pins>;
786 mediatek,pad-select = <0>;
791 pinctrl-names = "default";
792 pinctrl-0 = <&spi5_pins>;
793 mediatek,pad-select = <0>;
800 vusb33-supply = <&mt6358_vusb_reg>;
809 pinctrl-names = "default";
810 pinctrl-0 = <&uart0_pins_default>;
815 pinctrl-names = "default", "sleep";
816 pinctrl-0 = <&uart1_pins_default>;
817 pinctrl-1 = <&uart1_pins_sleep>;
819 interrupts-extended = <&sysirq GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>,
820 <&pio 121 IRQ_TYPE_EDGE_FALLING>;
822 bluetooth: bluetooth {
823 pinctrl-names = "default";
824 pinctrl-0 = <&bt_pins>;
826 compatible = "qcom,qca6174-bt";
827 enable-gpios = <&pio 120 0>;
829 firmware-name = "nvm_00440302_i2s.bin";
834 #address-cells = <1>;
836 vusb33-supply = <&mt6358_vusb_reg>;
840 compatible = "usb5e3,610";
845 #include <arm/cros-ec-keyboard.dtsi>
846 #include <arm/cros-ec-sbs.dtsi>