16ff94537SFabien Parent// SPDX-License-Identifier: GPL-2.0 26ff94537SFabien Parent/* 36ff94537SFabien Parent * Copyright (c) 2021-2022 BayLibre, SAS. 46ff94537SFabien Parent * Authors: 56ff94537SFabien Parent * Fabien Parent <fparent@baylibre.com> 66ff94537SFabien Parent * Bernhard Rosenkränzer <bero@baylibre.com> 7*a9efc40fSAlexandre Mergnat * Alexandre Mergnat <amergnat@baylibre.com> 86ff94537SFabien Parent */ 96ff94537SFabien Parent 106ff94537SFabien Parent/dts-v1/; 116ff94537SFabien Parent 126ff94537SFabien Parent#include <dt-bindings/gpio/gpio.h> 136ff94537SFabien Parent#include <dt-bindings/input/input.h> 146ff94537SFabien Parent#include <dt-bindings/pinctrl/mt8365-pinfunc.h> 156ff94537SFabien Parent#include "mt8365.dtsi" 1656e9f0f4SAlexandre Mergnat#include "mt6357.dtsi" 176ff94537SFabien Parent 186ff94537SFabien Parent/ { 196ff94537SFabien Parent model = "MediaTek MT8365 Open Platform EVK"; 206ff94537SFabien Parent compatible = "mediatek,mt8365-evk", "mediatek,mt8365"; 216ff94537SFabien Parent 226ff94537SFabien Parent aliases { 236ff94537SFabien Parent serial0 = &uart0; 246ff94537SFabien Parent }; 256ff94537SFabien Parent 266ff94537SFabien Parent chosen { 276ff94537SFabien Parent stdout-path = "serial0:921600n8"; 286ff94537SFabien Parent }; 296ff94537SFabien Parent 306ff94537SFabien Parent firmware { 316ff94537SFabien Parent optee { 326ff94537SFabien Parent compatible = "linaro,optee-tz"; 336ff94537SFabien Parent method = "smc"; 346ff94537SFabien Parent }; 356ff94537SFabien Parent }; 366ff94537SFabien Parent 376ff94537SFabien Parent gpio-keys { 386ff94537SFabien Parent compatible = "gpio-keys"; 396ff94537SFabien Parent pinctrl-names = "default"; 406ff94537SFabien Parent pinctrl-0 = <&gpio_keys>; 416ff94537SFabien Parent 426ff94537SFabien Parent key-volume-up { 436ff94537SFabien Parent gpios = <&pio 24 GPIO_ACTIVE_LOW>; 446ff94537SFabien Parent label = "volume_up"; 456ff94537SFabien Parent linux,code = <KEY_VOLUMEUP>; 466ff94537SFabien Parent wakeup-source; 476ff94537SFabien Parent debounce-interval = <15>; 486ff94537SFabien Parent }; 496ff94537SFabien Parent }; 506ff94537SFabien Parent 516ff94537SFabien Parent memory@40000000 { 526ff94537SFabien Parent device_type = "memory"; 536ff94537SFabien Parent reg = <0 0x40000000 0 0xc0000000>; 546ff94537SFabien Parent }; 556ff94537SFabien Parent 566ff94537SFabien Parent usb_otg_vbus: regulator-0 { 576ff94537SFabien Parent compatible = "regulator-fixed"; 586ff94537SFabien Parent regulator-name = "otg_vbus"; 596ff94537SFabien Parent regulator-min-microvolt = <5000000>; 606ff94537SFabien Parent regulator-max-microvolt = <5000000>; 616ff94537SFabien Parent gpio = <&pio 16 GPIO_ACTIVE_HIGH>; 626ff94537SFabien Parent enable-active-high; 636ff94537SFabien Parent }; 646ff94537SFabien Parent 656ff94537SFabien Parent reserved-memory { 666ff94537SFabien Parent #address-cells = <2>; 676ff94537SFabien Parent #size-cells = <2>; 686ff94537SFabien Parent ranges; 696ff94537SFabien Parent 702d98d0d2SAlexandre Bailon /* 192 KiB reserved for ARM Trusted Firmware (BL31) */ 716ff94537SFabien Parent bl31_secmon_reserved: secmon@43000000 { 726ff94537SFabien Parent no-map; 732d98d0d2SAlexandre Bailon reg = <0 0x43000000 0 0x30000>; 746ff94537SFabien Parent }; 756ff94537SFabien Parent 766ff94537SFabien Parent /* 12 MiB reserved for OP-TEE (BL32) 776ff94537SFabien Parent * +-----------------------+ 0x43e0_0000 786ff94537SFabien Parent * | SHMEM 2MiB | 796ff94537SFabien Parent * +-----------------------+ 0x43c0_0000 806ff94537SFabien Parent * | | TA_RAM 8MiB | 816ff94537SFabien Parent * + TZDRAM +--------------+ 0x4340_0000 826ff94537SFabien Parent * | | TEE_RAM 2MiB | 836ff94537SFabien Parent * +-----------------------+ 0x4320_0000 846ff94537SFabien Parent */ 856ff94537SFabien Parent optee_reserved: optee@43200000 { 866ff94537SFabien Parent no-map; 876ff94537SFabien Parent reg = <0 0x43200000 0 0x00c00000>; 886ff94537SFabien Parent }; 896ff94537SFabien Parent }; 90*a9efc40fSAlexandre Mergnat 91*a9efc40fSAlexandre Mergnat sound: sound { 92*a9efc40fSAlexandre Mergnat compatible = "mediatek,mt8365-mt6357"; 93*a9efc40fSAlexandre Mergnat pinctrl-names = "default", 94*a9efc40fSAlexandre Mergnat "dmic", 95*a9efc40fSAlexandre Mergnat "miso_off", 96*a9efc40fSAlexandre Mergnat "miso_on", 97*a9efc40fSAlexandre Mergnat "mosi_off", 98*a9efc40fSAlexandre Mergnat "mosi_on"; 99*a9efc40fSAlexandre Mergnat pinctrl-0 = <&aud_default_pins>; 100*a9efc40fSAlexandre Mergnat pinctrl-1 = <&aud_dmic_pins>; 101*a9efc40fSAlexandre Mergnat pinctrl-2 = <&aud_miso_off_pins>; 102*a9efc40fSAlexandre Mergnat pinctrl-3 = <&aud_miso_on_pins>; 103*a9efc40fSAlexandre Mergnat pinctrl-4 = <&aud_mosi_off_pins>; 104*a9efc40fSAlexandre Mergnat pinctrl-5 = <&aud_mosi_on_pins>; 105*a9efc40fSAlexandre Mergnat mediatek,platform = <&afe>; 106*a9efc40fSAlexandre Mergnat }; 107*a9efc40fSAlexandre Mergnat}; 108*a9efc40fSAlexandre Mergnat 109*a9efc40fSAlexandre Mergnat&afe { 110*a9efc40fSAlexandre Mergnat mediatek,dmic-mode = <1>; 111*a9efc40fSAlexandre Mergnat status = "okay"; 1126ff94537SFabien Parent}; 1136ff94537SFabien Parent 114a5fe2dbaSAlexandre Mergnat&cpu0 { 115a5fe2dbaSAlexandre Mergnat proc-supply = <&mt6357_vproc_reg>; 116a5fe2dbaSAlexandre Mergnat sram-supply = <&mt6357_vsram_proc_reg>; 117a5fe2dbaSAlexandre Mergnat}; 118a5fe2dbaSAlexandre Mergnat 119a5fe2dbaSAlexandre Mergnat&cpu1 { 120a5fe2dbaSAlexandre Mergnat proc-supply = <&mt6357_vproc_reg>; 121a5fe2dbaSAlexandre Mergnat sram-supply = <&mt6357_vsram_proc_reg>; 122a5fe2dbaSAlexandre Mergnat}; 123a5fe2dbaSAlexandre Mergnat 124a5fe2dbaSAlexandre Mergnat&cpu2 { 125a5fe2dbaSAlexandre Mergnat proc-supply = <&mt6357_vproc_reg>; 126a5fe2dbaSAlexandre Mergnat sram-supply = <&mt6357_vsram_proc_reg>; 127a5fe2dbaSAlexandre Mergnat}; 128a5fe2dbaSAlexandre Mergnat 129a5fe2dbaSAlexandre Mergnat&cpu3 { 130a5fe2dbaSAlexandre Mergnat proc-supply = <&mt6357_vproc_reg>; 131a5fe2dbaSAlexandre Mergnat sram-supply = <&mt6357_vsram_proc_reg>; 132a5fe2dbaSAlexandre Mergnat}; 133a5fe2dbaSAlexandre Mergnat 1342c3df90cSAlexandre Mergnatðernet { 1352c3df90cSAlexandre Mergnat pinctrl-0 = <ðernet_pins>; 1362c3df90cSAlexandre Mergnat pinctrl-names = "default"; 1372c3df90cSAlexandre Mergnat phy-handle = <ð_phy>; 1382c3df90cSAlexandre Mergnat phy-mode = "rmii"; 1392c3df90cSAlexandre Mergnat /* 1402c3df90cSAlexandre Mergnat * Ethernet and HDMI (DSI0) are sharing pins. 1412c3df90cSAlexandre Mergnat * Only one can be enabled at a time and require the physical switch 1422c3df90cSAlexandre Mergnat * SW2101 to be set on LAN position 1432c3df90cSAlexandre Mergnat * mt6357_vibr_reg and mt6357_vsim2_reg are needed to supply ethernet 1442c3df90cSAlexandre Mergnat */ 1452c3df90cSAlexandre Mergnat status = "disabled"; 1462c3df90cSAlexandre Mergnat 1472c3df90cSAlexandre Mergnat mdio { 1482c3df90cSAlexandre Mergnat #address-cells = <1>; 1492c3df90cSAlexandre Mergnat #size-cells = <0>; 1502c3df90cSAlexandre Mergnat 1512c3df90cSAlexandre Mergnat eth_phy: ethernet-phy@0 { 1522c3df90cSAlexandre Mergnat reg = <0>; 1532c3df90cSAlexandre Mergnat }; 1542c3df90cSAlexandre Mergnat }; 1552c3df90cSAlexandre Mergnat}; 1562c3df90cSAlexandre Mergnat 157988eff65SAlexandre Mergnat&i2c0 { 158988eff65SAlexandre Mergnat clock-frequency = <100000>; 159988eff65SAlexandre Mergnat pinctrl-0 = <&i2c0_pins>; 160988eff65SAlexandre Mergnat pinctrl-names = "default"; 161988eff65SAlexandre Mergnat status = "okay"; 162988eff65SAlexandre Mergnat}; 163988eff65SAlexandre Mergnat 1646e8270afSAlexandre Mergnat&mmc0 { 1656e8270afSAlexandre Mergnat assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL>; 1666e8270afSAlexandre Mergnat assigned-clocks = <&topckgen CLK_TOP_MSDC50_0_SEL>; 1676e8270afSAlexandre Mergnat bus-width = <8>; 1686e8270afSAlexandre Mergnat cap-mmc-highspeed; 1696e8270afSAlexandre Mergnat cap-mmc-hw-reset; 1706e8270afSAlexandre Mergnat hs400-ds-delay = <0x12012>; 1716e8270afSAlexandre Mergnat max-frequency = <200000000>; 1726e8270afSAlexandre Mergnat mmc-hs200-1_8v; 1736e8270afSAlexandre Mergnat mmc-hs400-1_8v; 1746e8270afSAlexandre Mergnat no-sd; 1756e8270afSAlexandre Mergnat no-sdio; 1766e8270afSAlexandre Mergnat non-removable; 1776e8270afSAlexandre Mergnat pinctrl-0 = <&mmc0_default_pins>; 1786e8270afSAlexandre Mergnat pinctrl-1 = <&mmc0_uhs_pins>; 1796e8270afSAlexandre Mergnat pinctrl-names = "default", "state_uhs"; 1806e8270afSAlexandre Mergnat vmmc-supply = <&mt6357_vemc_reg>; 1816e8270afSAlexandre Mergnat vqmmc-supply = <&mt6357_vio18_reg>; 1826e8270afSAlexandre Mergnat status = "okay"; 1836e8270afSAlexandre Mergnat}; 1846e8270afSAlexandre Mergnat 1856e8270afSAlexandre Mergnat&mmc1 { 1866e8270afSAlexandre Mergnat bus-width = <4>; 1876e8270afSAlexandre Mergnat cap-sd-highspeed; 1886e8270afSAlexandre Mergnat cd-gpios = <&pio 76 GPIO_ACTIVE_LOW>; 1896e8270afSAlexandre Mergnat max-frequency = <200000000>; 1906e8270afSAlexandre Mergnat pinctrl-0 = <&mmc1_default_pins>; 1916e8270afSAlexandre Mergnat pinctrl-1 = <&mmc1_uhs_pins>; 1926e8270afSAlexandre Mergnat pinctrl-names = "default", "state_uhs"; 1936e8270afSAlexandre Mergnat sd-uhs-sdr104; 1946e8270afSAlexandre Mergnat sd-uhs-sdr50; 1956e8270afSAlexandre Mergnat vmmc-supply = <&mt6357_vmch_reg>; 1966e8270afSAlexandre Mergnat vqmmc-supply = <&mt6357_vmc_reg>; 1976e8270afSAlexandre Mergnat status = "okay"; 1986e8270afSAlexandre Mergnat}; 1996e8270afSAlexandre Mergnat 20056e9f0f4SAlexandre Mergnat&mt6357_pmic { 20156e9f0f4SAlexandre Mergnat interrupts-extended = <&pio 145 IRQ_TYPE_LEVEL_HIGH>; 20256e9f0f4SAlexandre Mergnat interrupt-controller; 20356e9f0f4SAlexandre Mergnat #interrupt-cells = <2>; 204*a9efc40fSAlexandre Mergnat mediatek,micbias0-microvolt = <1900000>; 205*a9efc40fSAlexandre Mergnat mediatek,micbias1-microvolt = <1700000>; 20656e9f0f4SAlexandre Mergnat}; 20756e9f0f4SAlexandre Mergnat 2086ff94537SFabien Parent&pio { 209*a9efc40fSAlexandre Mergnat aud_default_pins: audiodefault-pins { 210*a9efc40fSAlexandre Mergnat clk-dat-pins { 211*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_72_CMDAT4__FUNC_I2S3_BCK>, 212*a9efc40fSAlexandre Mergnat <MT8365_PIN_73_CMDAT5__FUNC_I2S3_LRCK>, 213*a9efc40fSAlexandre Mergnat <MT8365_PIN_74_CMDAT6__FUNC_I2S3_MCK>, 214*a9efc40fSAlexandre Mergnat <MT8365_PIN_75_CMDAT7__FUNC_I2S3_DO>; 215*a9efc40fSAlexandre Mergnat }; 216*a9efc40fSAlexandre Mergnat }; 217*a9efc40fSAlexandre Mergnat 218*a9efc40fSAlexandre Mergnat aud_dmic_pins: audiodmic-pins { 219*a9efc40fSAlexandre Mergnat clk-dat-pins { 220*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_117_DMIC0_CLK__FUNC_DMIC0_CLK>, 221*a9efc40fSAlexandre Mergnat <MT8365_PIN_118_DMIC0_DAT0__FUNC_DMIC0_DAT0>, 222*a9efc40fSAlexandre Mergnat <MT8365_PIN_119_DMIC0_DAT1__FUNC_DMIC0_DAT1>; 223*a9efc40fSAlexandre Mergnat }; 224*a9efc40fSAlexandre Mergnat }; 225*a9efc40fSAlexandre Mergnat 226*a9efc40fSAlexandre Mergnat aud_miso_off_pins: misooff-pins { 227*a9efc40fSAlexandre Mergnat clk-dat-pins { 228*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_53_AUD_CLK_MISO__FUNC_GPIO53>, 229*a9efc40fSAlexandre Mergnat <MT8365_PIN_54_AUD_SYNC_MISO__FUNC_GPIO54>, 230*a9efc40fSAlexandre Mergnat <MT8365_PIN_55_AUD_DAT_MISO0__FUNC_GPIO55>, 231*a9efc40fSAlexandre Mergnat <MT8365_PIN_56_AUD_DAT_MISO1__FUNC_GPIO56>; 232*a9efc40fSAlexandre Mergnat input-enable; 233*a9efc40fSAlexandre Mergnat bias-pull-down; 234*a9efc40fSAlexandre Mergnat drive-strength = <2>; 235*a9efc40fSAlexandre Mergnat }; 236*a9efc40fSAlexandre Mergnat }; 237*a9efc40fSAlexandre Mergnat 238*a9efc40fSAlexandre Mergnat aud_miso_on_pins: misoon-pins { 239*a9efc40fSAlexandre Mergnat clk-dat-pins { 240*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_53_AUD_CLK_MISO__FUNC_AUD_CLK_MISO>, 241*a9efc40fSAlexandre Mergnat <MT8365_PIN_54_AUD_SYNC_MISO__FUNC_AUD_SYNC_MISO>, 242*a9efc40fSAlexandre Mergnat <MT8365_PIN_55_AUD_DAT_MISO0__FUNC_AUD_DAT_MISO0>, 243*a9efc40fSAlexandre Mergnat <MT8365_PIN_56_AUD_DAT_MISO1__FUNC_AUD_DAT_MISO1>; 244*a9efc40fSAlexandre Mergnat drive-strength = <6>; 245*a9efc40fSAlexandre Mergnat }; 246*a9efc40fSAlexandre Mergnat }; 247*a9efc40fSAlexandre Mergnat 248*a9efc40fSAlexandre Mergnat aud_mosi_off_pins: mosioff-pins { 249*a9efc40fSAlexandre Mergnat clk-dat-pins { 250*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_49_AUD_CLK_MOSI__FUNC_GPIO49>, 251*a9efc40fSAlexandre Mergnat <MT8365_PIN_50_AUD_SYNC_MOSI__FUNC_GPIO50>, 252*a9efc40fSAlexandre Mergnat <MT8365_PIN_51_AUD_DAT_MOSI0__FUNC_GPIO51>, 253*a9efc40fSAlexandre Mergnat <MT8365_PIN_52_AUD_DAT_MOSI1__FUNC_GPIO52>; 254*a9efc40fSAlexandre Mergnat input-enable; 255*a9efc40fSAlexandre Mergnat bias-pull-down; 256*a9efc40fSAlexandre Mergnat drive-strength = <2>; 257*a9efc40fSAlexandre Mergnat }; 258*a9efc40fSAlexandre Mergnat }; 259*a9efc40fSAlexandre Mergnat 260*a9efc40fSAlexandre Mergnat aud_mosi_on_pins: mosion-pins { 261*a9efc40fSAlexandre Mergnat clk-dat-pins { 262*a9efc40fSAlexandre Mergnat pinmux = <MT8365_PIN_49_AUD_CLK_MOSI__FUNC_AUD_CLK_MOSI>, 263*a9efc40fSAlexandre Mergnat <MT8365_PIN_50_AUD_SYNC_MOSI__FUNC_AUD_SYNC_MOSI>, 264*a9efc40fSAlexandre Mergnat <MT8365_PIN_51_AUD_DAT_MOSI0__FUNC_AUD_DAT_MOSI0>, 265*a9efc40fSAlexandre Mergnat <MT8365_PIN_52_AUD_DAT_MOSI1__FUNC_AUD_DAT_MOSI1>; 266*a9efc40fSAlexandre Mergnat drive-strength = <6>; 267*a9efc40fSAlexandre Mergnat }; 268*a9efc40fSAlexandre Mergnat }; 269*a9efc40fSAlexandre Mergnat 2702c3df90cSAlexandre Mergnat ethernet_pins: ethernet-pins { 2712c3df90cSAlexandre Mergnat phy_reset_pins { 2722c3df90cSAlexandre Mergnat pinmux = <MT8365_PIN_133_TDM_TX_DATA1__FUNC_GPIO133>; 2732c3df90cSAlexandre Mergnat }; 2742c3df90cSAlexandre Mergnat 2752c3df90cSAlexandre Mergnat rmii_pins { 2762c3df90cSAlexandre Mergnat pinmux = <MT8365_PIN_0_GPIO0__FUNC_EXT_TXD0>, 2772c3df90cSAlexandre Mergnat <MT8365_PIN_1_GPIO1__FUNC_EXT_TXD1>, 2782c3df90cSAlexandre Mergnat <MT8365_PIN_2_GPIO2__FUNC_EXT_TXD2>, 2792c3df90cSAlexandre Mergnat <MT8365_PIN_3_GPIO3__FUNC_EXT_TXD3>, 2802c3df90cSAlexandre Mergnat <MT8365_PIN_4_GPIO4__FUNC_EXT_TXC>, 2812c3df90cSAlexandre Mergnat <MT8365_PIN_5_GPIO5__FUNC_EXT_RXER>, 2822c3df90cSAlexandre Mergnat <MT8365_PIN_6_GPIO6__FUNC_EXT_RXC>, 2832c3df90cSAlexandre Mergnat <MT8365_PIN_7_GPIO7__FUNC_EXT_RXDV>, 2842c3df90cSAlexandre Mergnat <MT8365_PIN_8_GPIO8__FUNC_EXT_RXD0>, 2852c3df90cSAlexandre Mergnat <MT8365_PIN_9_GPIO9__FUNC_EXT_RXD1>, 2862c3df90cSAlexandre Mergnat <MT8365_PIN_10_GPIO10__FUNC_EXT_RXD2>, 2872c3df90cSAlexandre Mergnat <MT8365_PIN_11_GPIO11__FUNC_EXT_RXD3>, 2882c3df90cSAlexandre Mergnat <MT8365_PIN_12_GPIO12__FUNC_EXT_TXEN>, 2892c3df90cSAlexandre Mergnat <MT8365_PIN_13_GPIO13__FUNC_EXT_COL>, 2902c3df90cSAlexandre Mergnat <MT8365_PIN_14_GPIO14__FUNC_EXT_MDIO>, 2912c3df90cSAlexandre Mergnat <MT8365_PIN_15_GPIO15__FUNC_EXT_MDC>; 2922c3df90cSAlexandre Mergnat }; 2932c3df90cSAlexandre Mergnat }; 2942c3df90cSAlexandre Mergnat 2956ff94537SFabien Parent gpio_keys: gpio-keys-pins { 2966ff94537SFabien Parent pins { 2976ff94537SFabien Parent pinmux = <MT8365_PIN_24_KPCOL0__FUNC_KPCOL0>; 2986ff94537SFabien Parent bias-pull-up; 2996ff94537SFabien Parent input-enable; 3006ff94537SFabien Parent }; 3016ff94537SFabien Parent }; 3026ff94537SFabien Parent 303988eff65SAlexandre Mergnat i2c0_pins: i2c0-pins { 304988eff65SAlexandre Mergnat pins { 305988eff65SAlexandre Mergnat pinmux = <MT8365_PIN_57_SDA0__FUNC_SDA0_0>, 306988eff65SAlexandre Mergnat <MT8365_PIN_58_SCL0__FUNC_SCL0_0>; 307988eff65SAlexandre Mergnat bias-pull-up; 308988eff65SAlexandre Mergnat }; 309988eff65SAlexandre Mergnat }; 310988eff65SAlexandre Mergnat 3116e8270afSAlexandre Mergnat mmc0_default_pins: mmc0-default-pins { 3126e8270afSAlexandre Mergnat clk-pins { 3136e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_99_MSDC0_CLK__FUNC_MSDC0_CLK>; 3146e8270afSAlexandre Mergnat bias-pull-down; 3156e8270afSAlexandre Mergnat }; 3166e8270afSAlexandre Mergnat 3176e8270afSAlexandre Mergnat cmd-dat-pins { 3186e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_103_MSDC0_DAT0__FUNC_MSDC0_DAT0>, 3196e8270afSAlexandre Mergnat <MT8365_PIN_102_MSDC0_DAT1__FUNC_MSDC0_DAT1>, 3206e8270afSAlexandre Mergnat <MT8365_PIN_101_MSDC0_DAT2__FUNC_MSDC0_DAT2>, 3216e8270afSAlexandre Mergnat <MT8365_PIN_100_MSDC0_DAT3__FUNC_MSDC0_DAT3>, 3226e8270afSAlexandre Mergnat <MT8365_PIN_96_MSDC0_DAT4__FUNC_MSDC0_DAT4>, 3236e8270afSAlexandre Mergnat <MT8365_PIN_95_MSDC0_DAT5__FUNC_MSDC0_DAT5>, 3246e8270afSAlexandre Mergnat <MT8365_PIN_94_MSDC0_DAT6__FUNC_MSDC0_DAT6>, 3256e8270afSAlexandre Mergnat <MT8365_PIN_93_MSDC0_DAT7__FUNC_MSDC0_DAT7>, 3266e8270afSAlexandre Mergnat <MT8365_PIN_98_MSDC0_CMD__FUNC_MSDC0_CMD>; 3276e8270afSAlexandre Mergnat input-enable; 3286e8270afSAlexandre Mergnat bias-pull-up; 3296e8270afSAlexandre Mergnat }; 3306e8270afSAlexandre Mergnat 3316e8270afSAlexandre Mergnat rst-pins { 3326e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_97_MSDC0_RSTB__FUNC_MSDC0_RSTB>; 3336e8270afSAlexandre Mergnat bias-pull-up; 3346e8270afSAlexandre Mergnat }; 3356e8270afSAlexandre Mergnat }; 3366e8270afSAlexandre Mergnat 3376e8270afSAlexandre Mergnat mmc0_uhs_pins: mmc0-uhs-pins { 3386e8270afSAlexandre Mergnat clk-pins { 3396e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_99_MSDC0_CLK__FUNC_MSDC0_CLK>; 3406e8270afSAlexandre Mergnat drive-strength = <MTK_DRIVE_10mA>; 3416e8270afSAlexandre Mergnat bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 3426e8270afSAlexandre Mergnat }; 3436e8270afSAlexandre Mergnat 3446e8270afSAlexandre Mergnat cmd-dat-pins { 3456e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_103_MSDC0_DAT0__FUNC_MSDC0_DAT0>, 3466e8270afSAlexandre Mergnat <MT8365_PIN_102_MSDC0_DAT1__FUNC_MSDC0_DAT1>, 3476e8270afSAlexandre Mergnat <MT8365_PIN_101_MSDC0_DAT2__FUNC_MSDC0_DAT2>, 3486e8270afSAlexandre Mergnat <MT8365_PIN_100_MSDC0_DAT3__FUNC_MSDC0_DAT3>, 3496e8270afSAlexandre Mergnat <MT8365_PIN_96_MSDC0_DAT4__FUNC_MSDC0_DAT4>, 3506e8270afSAlexandre Mergnat <MT8365_PIN_95_MSDC0_DAT5__FUNC_MSDC0_DAT5>, 3516e8270afSAlexandre Mergnat <MT8365_PIN_94_MSDC0_DAT6__FUNC_MSDC0_DAT6>, 3526e8270afSAlexandre Mergnat <MT8365_PIN_93_MSDC0_DAT7__FUNC_MSDC0_DAT7>, 3536e8270afSAlexandre Mergnat <MT8365_PIN_98_MSDC0_CMD__FUNC_MSDC0_CMD>; 3546e8270afSAlexandre Mergnat input-enable; 3556e8270afSAlexandre Mergnat drive-strength = <MTK_DRIVE_10mA>; 3566e8270afSAlexandre Mergnat bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 3576e8270afSAlexandre Mergnat }; 3586e8270afSAlexandre Mergnat 3596e8270afSAlexandre Mergnat ds-pins { 3606e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_104_MSDC0_DSL__FUNC_MSDC0_DSL>; 3616e8270afSAlexandre Mergnat drive-strength = <MTK_DRIVE_10mA>; 3626e8270afSAlexandre Mergnat bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 3636e8270afSAlexandre Mergnat }; 3646e8270afSAlexandre Mergnat 3656e8270afSAlexandre Mergnat rst-pins { 3666e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_97_MSDC0_RSTB__FUNC_MSDC0_RSTB>; 3676e8270afSAlexandre Mergnat drive-strength = <MTK_DRIVE_10mA>; 3686e8270afSAlexandre Mergnat bias-pull-up; 3696e8270afSAlexandre Mergnat }; 3706e8270afSAlexandre Mergnat }; 3716e8270afSAlexandre Mergnat 3726e8270afSAlexandre Mergnat mmc1_default_pins: mmc1-default-pins { 3736e8270afSAlexandre Mergnat cd-pins { 3746e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_76_CMDAT8__FUNC_GPIO76>; 3756e8270afSAlexandre Mergnat bias-pull-up; 3766e8270afSAlexandre Mergnat }; 3776e8270afSAlexandre Mergnat 3786e8270afSAlexandre Mergnat clk-pins { 3796e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_88_MSDC1_CLK__FUNC_MSDC1_CLK>; 3806e8270afSAlexandre Mergnat bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 3816e8270afSAlexandre Mergnat }; 3826e8270afSAlexandre Mergnat 3836e8270afSAlexandre Mergnat cmd-dat-pins { 3846e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_89_MSDC1_DAT0__FUNC_MSDC1_DAT0>, 3856e8270afSAlexandre Mergnat <MT8365_PIN_90_MSDC1_DAT1__FUNC_MSDC1_DAT1>, 3866e8270afSAlexandre Mergnat <MT8365_PIN_91_MSDC1_DAT2__FUNC_MSDC1_DAT2>, 3876e8270afSAlexandre Mergnat <MT8365_PIN_92_MSDC1_DAT3__FUNC_MSDC1_DAT3>, 3886e8270afSAlexandre Mergnat <MT8365_PIN_87_MSDC1_CMD__FUNC_MSDC1_CMD>; 3896e8270afSAlexandre Mergnat input-enable; 3906e8270afSAlexandre Mergnat bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 3916e8270afSAlexandre Mergnat }; 3926e8270afSAlexandre Mergnat }; 3936e8270afSAlexandre Mergnat 3946e8270afSAlexandre Mergnat mmc1_uhs_pins: mmc1-uhs-pins { 3956e8270afSAlexandre Mergnat clk-pins { 3966e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_88_MSDC1_CLK__FUNC_MSDC1_CLK>; 397d79603c2SAngeloGioacchino Del Regno drive-strength = <8>; 3986e8270afSAlexandre Mergnat bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 3996e8270afSAlexandre Mergnat }; 4006e8270afSAlexandre Mergnat 4016e8270afSAlexandre Mergnat cmd-dat-pins { 4026e8270afSAlexandre Mergnat pinmux = <MT8365_PIN_89_MSDC1_DAT0__FUNC_MSDC1_DAT0>, 4036e8270afSAlexandre Mergnat <MT8365_PIN_90_MSDC1_DAT1__FUNC_MSDC1_DAT1>, 4046e8270afSAlexandre Mergnat <MT8365_PIN_91_MSDC1_DAT2__FUNC_MSDC1_DAT2>, 4056e8270afSAlexandre Mergnat <MT8365_PIN_92_MSDC1_DAT3__FUNC_MSDC1_DAT3>, 4066e8270afSAlexandre Mergnat <MT8365_PIN_87_MSDC1_CMD__FUNC_MSDC1_CMD>; 4076e8270afSAlexandre Mergnat input-enable; 408d79603c2SAngeloGioacchino Del Regno drive-strength = <6>; 4096e8270afSAlexandre Mergnat bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 4106e8270afSAlexandre Mergnat }; 4116e8270afSAlexandre Mergnat }; 4126e8270afSAlexandre Mergnat 4136ff94537SFabien Parent uart0_pins: uart0-pins { 4146ff94537SFabien Parent pins { 4156ff94537SFabien Parent pinmux = <MT8365_PIN_35_URXD0__FUNC_URXD0>, 4166ff94537SFabien Parent <MT8365_PIN_36_UTXD0__FUNC_UTXD0>; 4176ff94537SFabien Parent }; 4186ff94537SFabien Parent }; 4196ff94537SFabien Parent 4206ff94537SFabien Parent uart1_pins: uart1-pins { 4216ff94537SFabien Parent pins { 4226ff94537SFabien Parent pinmux = <MT8365_PIN_37_URXD1__FUNC_URXD1>, 4236ff94537SFabien Parent <MT8365_PIN_38_UTXD1__FUNC_UTXD1>; 4246ff94537SFabien Parent }; 4256ff94537SFabien Parent }; 4266ff94537SFabien Parent 4276ff94537SFabien Parent uart2_pins: uart2-pins { 4286ff94537SFabien Parent pins { 4296ff94537SFabien Parent pinmux = <MT8365_PIN_39_URXD2__FUNC_URXD2>, 4306ff94537SFabien Parent <MT8365_PIN_40_UTXD2__FUNC_UTXD2>; 4316ff94537SFabien Parent }; 4326ff94537SFabien Parent }; 4336ff94537SFabien Parent 4346ff94537SFabien Parent usb_pins: usb-pins { 4356ff94537SFabien Parent id-pins { 4366ff94537SFabien Parent pinmux = <MT8365_PIN_17_GPIO17__FUNC_GPIO17>; 4376ff94537SFabien Parent input-enable; 4386ff94537SFabien Parent bias-pull-up; 4396ff94537SFabien Parent }; 4406ff94537SFabien Parent 4416ff94537SFabien Parent usb0-vbus-pins { 4426ff94537SFabien Parent pinmux = <MT8365_PIN_16_GPIO16__FUNC_USB_DRVVBUS>; 4436ff94537SFabien Parent output-high; 4446ff94537SFabien Parent }; 4456ff94537SFabien Parent 4466ff94537SFabien Parent usb1-vbus-pins { 4476ff94537SFabien Parent pinmux = <MT8365_PIN_18_GPIO18__FUNC_GPIO18>; 4486ff94537SFabien Parent output-high; 4496ff94537SFabien Parent }; 4506ff94537SFabien Parent }; 4516ff94537SFabien Parent 4526ff94537SFabien Parent pwm_pins: pwm-pins { 4536ff94537SFabien Parent pins { 4546ff94537SFabien Parent pinmux = <MT8365_PIN_19_DISP_PWM__FUNC_PWM_A>, 4556ff94537SFabien Parent <MT8365_PIN_116_I2S_BCK__FUNC_PWM_C>; 4566ff94537SFabien Parent }; 4576ff94537SFabien Parent }; 4586ff94537SFabien Parent}; 4596ff94537SFabien Parent 4606ff94537SFabien Parent&pwm { 4616ff94537SFabien Parent pinctrl-0 = <&pwm_pins>; 4626ff94537SFabien Parent pinctrl-names = "default"; 4636ff94537SFabien Parent status = "okay"; 4646ff94537SFabien Parent}; 4656ff94537SFabien Parent 4660899813fSAlexandre Mergnat&ssusb { 4670899813fSAlexandre Mergnat dr_mode = "otg"; 4680899813fSAlexandre Mergnat maximum-speed = "high-speed"; 4690899813fSAlexandre Mergnat pinctrl-0 = <&usb_pins>; 4700899813fSAlexandre Mergnat pinctrl-names = "default"; 4710899813fSAlexandre Mergnat usb-role-switch; 4720899813fSAlexandre Mergnat vusb33-supply = <&mt6357_vusb33_reg>; 4730899813fSAlexandre Mergnat status = "okay"; 4740899813fSAlexandre Mergnat 4750899813fSAlexandre Mergnat connector { 4760899813fSAlexandre Mergnat compatible = "gpio-usb-b-connector", "usb-b-connector"; 4770899813fSAlexandre Mergnat id-gpios = <&pio 17 GPIO_ACTIVE_HIGH>; 4780899813fSAlexandre Mergnat type = "micro"; 4790899813fSAlexandre Mergnat vbus-supply = <&usb_otg_vbus>; 4800899813fSAlexandre Mergnat }; 4810899813fSAlexandre Mergnat}; 4820899813fSAlexandre Mergnat 4830899813fSAlexandre Mergnat&usb_host { 4840899813fSAlexandre Mergnat vusb33-supply = <&mt6357_vusb33_reg>; 4850899813fSAlexandre Mergnat status = "okay"; 4860899813fSAlexandre Mergnat}; 4870899813fSAlexandre Mergnat 4886ff94537SFabien Parent&uart0 { 4896ff94537SFabien Parent pinctrl-0 = <&uart0_pins>; 4906ff94537SFabien Parent pinctrl-names = "default"; 4916ff94537SFabien Parent status = "okay"; 4926ff94537SFabien Parent}; 4936ff94537SFabien Parent 4946ff94537SFabien Parent&uart1 { 4956ff94537SFabien Parent pinctrl-0 = <&uart1_pins>; 4966ff94537SFabien Parent pinctrl-names = "default"; 4976ff94537SFabien Parent status = "okay"; 4986ff94537SFabien Parent}; 4996ff94537SFabien Parent 5006ff94537SFabien Parent&uart2 { 5016ff94537SFabien Parent pinctrl-0 = <&uart2_pins>; 5026ff94537SFabien Parent pinctrl-names = "default"; 5036ff94537SFabien Parent status = "okay"; 5046ff94537SFabien Parent}; 505