16147314aSFabien Parent// SPDX-License-Identifier: (GPL-2.0 OR MIT)
26147314aSFabien Parent/*
36147314aSFabien Parent * Copyright (C) 2022 BayLibre, SAS.
46147314aSFabien Parent * Author: Fabien Parent <fparent@baylibre.com>
56147314aSFabien Parent */
66147314aSFabien Parent/dts-v1/;
76147314aSFabien Parent
86147314aSFabien Parent#include "mt8195.dtsi"
96147314aSFabien Parent#include "mt6359.dtsi"
106147314aSFabien Parent
116147314aSFabien Parent#include <dt-bindings/gpio/gpio.h>
126147314aSFabien Parent#include <dt-bindings/input/input.h>
136147314aSFabien Parent#include <dt-bindings/pinctrl/mt8195-pinfunc.h>
146147314aSFabien Parent#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
156147314aSFabien Parent
166147314aSFabien Parent/ {
176147314aSFabien Parent	model = "MediaTek MT8195 demo board";
186147314aSFabien Parent	compatible = "mediatek,mt8195-demo", "mediatek,mt8195";
196147314aSFabien Parent
206147314aSFabien Parent	aliases {
216147314aSFabien Parent		serial0 = &uart0;
226147314aSFabien Parent	};
236147314aSFabien Parent
246147314aSFabien Parent	chosen {
256147314aSFabien Parent		stdout-path = "serial0:921600n8";
266147314aSFabien Parent	};
276147314aSFabien Parent
286147314aSFabien Parent	firmware {
296147314aSFabien Parent		optee {
306147314aSFabien Parent			compatible = "linaro,optee-tz";
316147314aSFabien Parent			method = "smc";
326147314aSFabien Parent		};
336147314aSFabien Parent	};
346147314aSFabien Parent
356147314aSFabien Parent	gpio-keys {
366147314aSFabien Parent		compatible = "gpio-keys";
376147314aSFabien Parent		pinctrl-names = "default";
386147314aSFabien Parent		pinctrl-0 = <&gpio_keys_pins>;
396147314aSFabien Parent
406147314aSFabien Parent		key-0 {
416147314aSFabien Parent			gpios = <&pio 106 GPIO_ACTIVE_LOW>;
426147314aSFabien Parent			label = "volume_up";
436147314aSFabien Parent			linux,code = <KEY_VOLUMEUP>;
446147314aSFabien Parent			wakeup-source;
456147314aSFabien Parent			debounce-interval = <15>;
466147314aSFabien Parent		};
476147314aSFabien Parent	};
486147314aSFabien Parent
496147314aSFabien Parent	memory@40000000 {
506147314aSFabien Parent		device_type = "memory";
51*25389c03SMacpaul Lin		reg = <0 0x40000000 0x2 0x00000000>;
526147314aSFabien Parent	};
536147314aSFabien Parent
546147314aSFabien Parent	reserved-memory {
556147314aSFabien Parent		#address-cells = <2>;
566147314aSFabien Parent		#size-cells = <2>;
576147314aSFabien Parent		ranges;
586147314aSFabien Parent
59e4a41752SMacpaul Lin		/* 2 MiB reserved for ARM Trusted Firmware (BL31) */
606147314aSFabien Parent		bl31_secmon_reserved: secmon@54600000 {
616147314aSFabien Parent			no-map;
62e4a41752SMacpaul Lin			reg = <0 0x54600000 0x0 0x200000>;
636147314aSFabien Parent		};
646147314aSFabien Parent
656147314aSFabien Parent		/* 12 MiB reserved for OP-TEE (BL32)
666147314aSFabien Parent		 * +-----------------------+ 0x43e0_0000
676147314aSFabien Parent		 * |      SHMEM 2MiB       |
686147314aSFabien Parent		 * +-----------------------+ 0x43c0_0000
696147314aSFabien Parent		 * |        | TA_RAM  8MiB |
706147314aSFabien Parent		 * + TZDRAM +--------------+ 0x4340_0000
716147314aSFabien Parent		 * |        | TEE_RAM 2MiB |
726147314aSFabien Parent		 * +-----------------------+ 0x4320_0000
736147314aSFabien Parent		 */
746147314aSFabien Parent		optee_reserved: optee@43200000 {
756147314aSFabien Parent			no-map;
766147314aSFabien Parent			reg = <0 0x43200000 0 0x00c00000>;
776147314aSFabien Parent		};
786147314aSFabien Parent	};
796147314aSFabien Parent};
806147314aSFabien Parent
81c5fe37e8SBiao Huang&eth {
82c5fe37e8SBiao Huang	phy-mode ="rgmii-id";
83c5fe37e8SBiao Huang	phy-handle = <&ethernet_phy0>;
84c5fe37e8SBiao Huang	snps,reset-gpio = <&pio 93 GPIO_ACTIVE_HIGH>;
85c5fe37e8SBiao Huang	snps,reset-delays-us = <0 10000 80000>;
86c5fe37e8SBiao Huang	pinctrl-names = "default", "sleep";
87c5fe37e8SBiao Huang	pinctrl-0 = <&eth_default_pins>;
88c5fe37e8SBiao Huang	pinctrl-1 = <&eth_sleep_pins>;
89c5fe37e8SBiao Huang	status = "okay";
90c5fe37e8SBiao Huang
91c5fe37e8SBiao Huang	mdio {
92c5fe37e8SBiao Huang		ethernet_phy0: ethernet-phy@1 {
93c5fe37e8SBiao Huang			reg = <0x1>;
94c5fe37e8SBiao Huang		};
95c5fe37e8SBiao Huang	};
96c5fe37e8SBiao Huang};
97c5fe37e8SBiao Huang
986147314aSFabien Parent&i2c6 {
996147314aSFabien Parent	clock-frequency = <400000>;
1006147314aSFabien Parent	pinctrl-0 = <&i2c6_pins>;
1016147314aSFabien Parent	pinctrl-names = "default";
1026147314aSFabien Parent	status = "okay";
1036147314aSFabien Parent
1046147314aSFabien Parent	mt6360: pmic@34 {
1056147314aSFabien Parent		compatible = "mediatek,mt6360";
1066147314aSFabien Parent		reg = <0x34>;
1076147314aSFabien Parent		interrupt-controller;
1086147314aSFabien Parent		interrupts-extended = <&pio 101 IRQ_TYPE_EDGE_FALLING>;
1096147314aSFabien Parent		interrupt-names = "IRQB";
1106147314aSFabien Parent
1116147314aSFabien Parent		charger {
1126147314aSFabien Parent			compatible = "mediatek,mt6360-chg";
1136147314aSFabien Parent			richtek,vinovp-microvolt = <14500000>;
1146147314aSFabien Parent
1156147314aSFabien Parent			otg_vbus_regulator: usb-otg-vbus-regulator {
1166147314aSFabien Parent				regulator-compatible = "usb-otg-vbus";
1176147314aSFabien Parent				regulator-name = "usb-otg-vbus";
1186147314aSFabien Parent				regulator-min-microvolt = <4425000>;
1196147314aSFabien Parent				regulator-max-microvolt = <5825000>;
1206147314aSFabien Parent			};
1216147314aSFabien Parent		};
1226147314aSFabien Parent
1236147314aSFabien Parent		regulator {
1246147314aSFabien Parent			compatible = "mediatek,mt6360-regulator";
1256147314aSFabien Parent			LDO_VIN3-supply = <&mt6360_buck2>;
1266147314aSFabien Parent
1276147314aSFabien Parent			mt6360_buck1: buck1 {
1286147314aSFabien Parent				regulator-compatible = "BUCK1";
1296147314aSFabien Parent				regulator-name = "mt6360,buck1";
1306147314aSFabien Parent				regulator-min-microvolt = <300000>;
1316147314aSFabien Parent				regulator-max-microvolt = <1300000>;
1326147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1336147314aSFabien Parent							   MT6360_OPMODE_LP
1346147314aSFabien Parent							   MT6360_OPMODE_ULP>;
1356147314aSFabien Parent				regulator-always-on;
1366147314aSFabien Parent			};
1376147314aSFabien Parent
1386147314aSFabien Parent			mt6360_buck2: buck2 {
1396147314aSFabien Parent				regulator-compatible = "BUCK2";
1406147314aSFabien Parent				regulator-name = "mt6360,buck2";
1416147314aSFabien Parent				regulator-min-microvolt = <300000>;
1426147314aSFabien Parent				regulator-max-microvolt = <1300000>;
1436147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1446147314aSFabien Parent							   MT6360_OPMODE_LP
1456147314aSFabien Parent							   MT6360_OPMODE_ULP>;
1466147314aSFabien Parent				regulator-always-on;
1476147314aSFabien Parent			};
1486147314aSFabien Parent
1496147314aSFabien Parent			mt6360_ldo1: ldo1 {
1506147314aSFabien Parent				regulator-compatible = "LDO1";
1516147314aSFabien Parent				regulator-name = "mt6360,ldo1";
1526147314aSFabien Parent				regulator-min-microvolt = <1200000>;
1536147314aSFabien Parent				regulator-max-microvolt = <3600000>;
1546147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1556147314aSFabien Parent							   MT6360_OPMODE_LP>;
1566147314aSFabien Parent			};
1576147314aSFabien Parent
1586147314aSFabien Parent			mt6360_ldo2: ldo2 {
1596147314aSFabien Parent				regulator-compatible = "LDO2";
1606147314aSFabien Parent				regulator-name = "mt6360,ldo2";
1616147314aSFabien Parent				regulator-min-microvolt = <1200000>;
1626147314aSFabien Parent				regulator-max-microvolt = <3600000>;
1636147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1646147314aSFabien Parent							   MT6360_OPMODE_LP>;
1656147314aSFabien Parent			};
1666147314aSFabien Parent
1676147314aSFabien Parent			mt6360_ldo3: ldo3 {
1686147314aSFabien Parent				regulator-compatible = "LDO3";
1696147314aSFabien Parent				regulator-name = "mt6360,ldo3";
1706147314aSFabien Parent				regulator-min-microvolt = <1200000>;
1716147314aSFabien Parent				regulator-max-microvolt = <3600000>;
1726147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1736147314aSFabien Parent							   MT6360_OPMODE_LP>;
1746147314aSFabien Parent			};
1756147314aSFabien Parent
1766147314aSFabien Parent			mt6360_ldo5: ldo5 {
1776147314aSFabien Parent				regulator-compatible = "LDO5";
1786147314aSFabien Parent				regulator-name = "mt6360,ldo5";
1796147314aSFabien Parent				regulator-min-microvolt = <2700000>;
1806147314aSFabien Parent				regulator-max-microvolt = <3600000>;
1816147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1826147314aSFabien Parent							   MT6360_OPMODE_LP>;
1836147314aSFabien Parent			};
1846147314aSFabien Parent
1856147314aSFabien Parent			mt6360_ldo6: ldo6 {
1866147314aSFabien Parent				regulator-compatible = "LDO6";
1876147314aSFabien Parent				regulator-name = "mt6360,ldo6";
1886147314aSFabien Parent				regulator-min-microvolt = <500000>;
1896147314aSFabien Parent				regulator-max-microvolt = <2100000>;
1906147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
1916147314aSFabien Parent							   MT6360_OPMODE_LP>;
1926147314aSFabien Parent			};
1936147314aSFabien Parent
1946147314aSFabien Parent			mt6360_ldo7: ldo7 {
1956147314aSFabien Parent				regulator-compatible = "LDO7";
1966147314aSFabien Parent				regulator-name = "mt6360,ldo7";
1976147314aSFabien Parent				regulator-min-microvolt = <500000>;
1986147314aSFabien Parent				regulator-max-microvolt = <2100000>;
1996147314aSFabien Parent				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
2006147314aSFabien Parent							   MT6360_OPMODE_LP>;
2016147314aSFabien Parent				regulator-always-on;
2026147314aSFabien Parent			};
2036147314aSFabien Parent		};
2046147314aSFabien Parent	};
2056147314aSFabien Parent};
2066147314aSFabien Parent
2076147314aSFabien Parent&mmc0 {
2086147314aSFabien Parent	status = "okay";
2096147314aSFabien Parent	pinctrl-names = "default", "state_uhs";
2106147314aSFabien Parent	pinctrl-0 = <&mmc0_default_pins>;
2116147314aSFabien Parent	pinctrl-1 = <&mmc0_uhs_pins>;
2126147314aSFabien Parent	bus-width = <8>;
2136147314aSFabien Parent	max-frequency = <200000000>;
2146147314aSFabien Parent	cap-mmc-highspeed;
2156147314aSFabien Parent	mmc-hs200-1_8v;
2166147314aSFabien Parent	mmc-hs400-1_8v;
2176147314aSFabien Parent	cap-mmc-hw-reset;
2186147314aSFabien Parent	no-sdio;
2196147314aSFabien Parent	no-sd;
2206147314aSFabien Parent	hs400-ds-delay = <0x14c11>;
2216147314aSFabien Parent	vmmc-supply = <&mt6359_vemc_1_ldo_reg>;
2226147314aSFabien Parent	vqmmc-supply = <&mt6359_vufs_ldo_reg>;
2236147314aSFabien Parent	non-removable;
2246147314aSFabien Parent};
2256147314aSFabien Parent
2266147314aSFabien Parent&mmc1 {
2276147314aSFabien Parent	pinctrl-names = "default", "state_uhs";
2286147314aSFabien Parent	pinctrl-0 = <&mmc1_default_pins>;
2296147314aSFabien Parent	pinctrl-1 = <&mmc1_uhs_pins>;
2306147314aSFabien Parent	cd-gpios = <&pio 129 GPIO_ACTIVE_LOW>;
2316147314aSFabien Parent	bus-width = <4>;
2326147314aSFabien Parent	max-frequency = <200000000>;
2336147314aSFabien Parent	cap-sd-highspeed;
2346147314aSFabien Parent	sd-uhs-sdr50;
2356147314aSFabien Parent	sd-uhs-sdr104;
2366147314aSFabien Parent	vmmc-supply = <&mt6360_ldo5>;
2376147314aSFabien Parent	vqmmc-supply = <&mt6360_ldo3>;
2386147314aSFabien Parent	status = "okay";
2396147314aSFabien Parent};
2406147314aSFabien Parent
2416147314aSFabien Parent&mt6359_vbbck_ldo_reg {
2426147314aSFabien Parent	regulator-always-on;
2436147314aSFabien Parent};
2446147314aSFabien Parent
2456147314aSFabien Parent&mt6359_vcore_buck_reg {
2466147314aSFabien Parent	regulator-always-on;
2476147314aSFabien Parent};
2486147314aSFabien Parent
2496147314aSFabien Parent&mt6359_vgpu11_buck_reg {
2506147314aSFabien Parent	regulator-always-on;
2516147314aSFabien Parent};
2526147314aSFabien Parent
2536147314aSFabien Parent&mt6359_vproc1_buck_reg {
2546147314aSFabien Parent	regulator-always-on;
2556147314aSFabien Parent};
2566147314aSFabien Parent
2576147314aSFabien Parent&mt6359_vproc2_buck_reg {
2586147314aSFabien Parent	regulator-always-on;
2596147314aSFabien Parent};
2606147314aSFabien Parent
2616147314aSFabien Parent&mt6359_vpu_buck_reg {
2626147314aSFabien Parent	regulator-always-on;
2636147314aSFabien Parent};
2646147314aSFabien Parent
2656147314aSFabien Parent&mt6359_vrf12_ldo_reg {
2666147314aSFabien Parent	regulator-always-on;
2676147314aSFabien Parent};
2686147314aSFabien Parent
2696147314aSFabien Parent&mt6359_vsram_md_ldo_reg {
2706147314aSFabien Parent	regulator-always-on;
2716147314aSFabien Parent};
2726147314aSFabien Parent
2736147314aSFabien Parent&mt6359_vsram_others_ldo_reg {
2746147314aSFabien Parent	regulator-always-on;
2756147314aSFabien Parent};
2766147314aSFabien Parent
2776147314aSFabien Parent&pio {
278c5fe37e8SBiao Huang	eth_default_pins: eth-default-pins {
279c5fe37e8SBiao Huang		pins-txd {
280c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO77__FUNC_GBE_TXD3>,
281c5fe37e8SBiao Huang				 <PINMUX_GPIO78__FUNC_GBE_TXD2>,
282c5fe37e8SBiao Huang				 <PINMUX_GPIO79__FUNC_GBE_TXD1>,
283c5fe37e8SBiao Huang				 <PINMUX_GPIO80__FUNC_GBE_TXD0>;
284c5fe37e8SBiao Huang			drive-strength = <MTK_DRIVE_8mA>;
285c5fe37e8SBiao Huang		};
286c5fe37e8SBiao Huang		pins-cc {
287c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO85__FUNC_GBE_TXC>,
288c5fe37e8SBiao Huang				 <PINMUX_GPIO88__FUNC_GBE_TXEN>,
289c5fe37e8SBiao Huang				 <PINMUX_GPIO87__FUNC_GBE_RXDV>,
290c5fe37e8SBiao Huang				 <PINMUX_GPIO86__FUNC_GBE_RXC>;
291c5fe37e8SBiao Huang			drive-strength = <MTK_DRIVE_8mA>;
292c5fe37e8SBiao Huang		};
293c5fe37e8SBiao Huang		pins-rxd {
294c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO81__FUNC_GBE_RXD3>,
295c5fe37e8SBiao Huang				 <PINMUX_GPIO82__FUNC_GBE_RXD2>,
296c5fe37e8SBiao Huang				 <PINMUX_GPIO83__FUNC_GBE_RXD1>,
297c5fe37e8SBiao Huang				 <PINMUX_GPIO84__FUNC_GBE_RXD0>;
298c5fe37e8SBiao Huang		};
299c5fe37e8SBiao Huang		pins-mdio {
300c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO89__FUNC_GBE_MDC>,
301c5fe37e8SBiao Huang				 <PINMUX_GPIO90__FUNC_GBE_MDIO>;
302c5fe37e8SBiao Huang			input-enable;
303c5fe37e8SBiao Huang		};
304c5fe37e8SBiao Huang		pins-power {
305c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO91__FUNC_GPIO91>,
306c5fe37e8SBiao Huang				 <PINMUX_GPIO92__FUNC_GPIO92>;
307c5fe37e8SBiao Huang			output-high;
308c5fe37e8SBiao Huang		};
309c5fe37e8SBiao Huang	};
310c5fe37e8SBiao Huang
311c5fe37e8SBiao Huang	eth_sleep_pins: eth-sleep-pins {
312c5fe37e8SBiao Huang		pins-txd {
313c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO77__FUNC_GPIO77>,
314c5fe37e8SBiao Huang				 <PINMUX_GPIO78__FUNC_GPIO78>,
315c5fe37e8SBiao Huang				 <PINMUX_GPIO79__FUNC_GPIO79>,
316c5fe37e8SBiao Huang				 <PINMUX_GPIO80__FUNC_GPIO80>;
317c5fe37e8SBiao Huang		};
318c5fe37e8SBiao Huang		pins-cc {
319c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO85__FUNC_GPIO85>,
320c5fe37e8SBiao Huang				 <PINMUX_GPIO88__FUNC_GPIO88>,
321c5fe37e8SBiao Huang				 <PINMUX_GPIO87__FUNC_GPIO87>,
322c5fe37e8SBiao Huang				 <PINMUX_GPIO86__FUNC_GPIO86>;
323c5fe37e8SBiao Huang		};
324c5fe37e8SBiao Huang		pins-rxd {
325c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO81__FUNC_GPIO81>,
326c5fe37e8SBiao Huang				 <PINMUX_GPIO82__FUNC_GPIO82>,
327c5fe37e8SBiao Huang				 <PINMUX_GPIO83__FUNC_GPIO83>,
328c5fe37e8SBiao Huang				 <PINMUX_GPIO84__FUNC_GPIO84>;
329c5fe37e8SBiao Huang		};
330c5fe37e8SBiao Huang		pins-mdio {
331c5fe37e8SBiao Huang			pinmux = <PINMUX_GPIO89__FUNC_GPIO89>,
332c5fe37e8SBiao Huang				 <PINMUX_GPIO90__FUNC_GPIO90>;
333c5fe37e8SBiao Huang			input-disable;
334c5fe37e8SBiao Huang			bias-disable;
335c5fe37e8SBiao Huang		};
336c5fe37e8SBiao Huang	};
337c5fe37e8SBiao Huang
3386147314aSFabien Parent	gpio_keys_pins: gpio-keys-pins {
3396147314aSFabien Parent		pins {
3406147314aSFabien Parent			pinmux = <PINMUX_GPIO106__FUNC_GPIO106>;
3416147314aSFabien Parent			input-enable;
3426147314aSFabien Parent		};
3436147314aSFabien Parent	};
3446147314aSFabien Parent
3456147314aSFabien Parent	i2c6_pins: i2c6-pins {
3466147314aSFabien Parent		pins {
3476147314aSFabien Parent			pinmux = <PINMUX_GPIO25__FUNC_SDA6>,
3486147314aSFabien Parent				 <PINMUX_GPIO26__FUNC_SCL6>;
3496147314aSFabien Parent			bias-pull-up;
3506147314aSFabien Parent		};
3516147314aSFabien Parent	};
3526147314aSFabien Parent
3536147314aSFabien Parent	mmc0_default_pins: mmc0-default-pins {
3546147314aSFabien Parent		pins-clk {
3556147314aSFabien Parent			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
3566147314aSFabien Parent			drive-strength = <MTK_DRIVE_6mA>;
3576147314aSFabien Parent			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
3586147314aSFabien Parent		};
3596147314aSFabien Parent
3606147314aSFabien Parent		pins-cmd-dat {
3616147314aSFabien Parent			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
3626147314aSFabien Parent				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
3636147314aSFabien Parent				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
3646147314aSFabien Parent				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
3656147314aSFabien Parent				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
3666147314aSFabien Parent				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
3676147314aSFabien Parent				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
3686147314aSFabien Parent				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
3696147314aSFabien Parent				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
3706147314aSFabien Parent			input-enable;
3716147314aSFabien Parent			drive-strength = <MTK_DRIVE_6mA>;
3726147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
3736147314aSFabien Parent		};
3746147314aSFabien Parent
3756147314aSFabien Parent		pins-rst {
3766147314aSFabien Parent			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
3776147314aSFabien Parent			drive-strength = <MTK_DRIVE_6mA>;
3786147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
3796147314aSFabien Parent		};
3806147314aSFabien Parent	};
3816147314aSFabien Parent
3826147314aSFabien Parent	mmc0_uhs_pins: mmc0-uhs-pins {
3836147314aSFabien Parent		pins-clk {
3846147314aSFabien Parent			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
3856147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
3866147314aSFabien Parent			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
3876147314aSFabien Parent		};
3886147314aSFabien Parent
3896147314aSFabien Parent		pins-cmd-dat {
3906147314aSFabien Parent			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
3916147314aSFabien Parent				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
3926147314aSFabien Parent				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
3936147314aSFabien Parent				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
3946147314aSFabien Parent				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
3956147314aSFabien Parent				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
3966147314aSFabien Parent				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
3976147314aSFabien Parent				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
3986147314aSFabien Parent				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
3996147314aSFabien Parent			input-enable;
4006147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4016147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
4026147314aSFabien Parent		};
4036147314aSFabien Parent
4046147314aSFabien Parent		pins-ds {
4056147314aSFabien Parent			pinmux = <PINMUX_GPIO127__FUNC_MSDC0_DSL>;
4066147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4076147314aSFabien Parent			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
4086147314aSFabien Parent		};
4096147314aSFabien Parent
4106147314aSFabien Parent		pins-rst {
4116147314aSFabien Parent			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
4126147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4136147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
4146147314aSFabien Parent		};
4156147314aSFabien Parent	};
4166147314aSFabien Parent
4176147314aSFabien Parent	mmc1_default_pins: mmc1-default-pins {
4186147314aSFabien Parent		pins-clk {
4196147314aSFabien Parent			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
4206147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4216147314aSFabien Parent			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
4226147314aSFabien Parent		};
4236147314aSFabien Parent
4246147314aSFabien Parent		pins-cmd-dat {
4256147314aSFabien Parent			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
4266147314aSFabien Parent				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
4276147314aSFabien Parent				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
4286147314aSFabien Parent				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
4296147314aSFabien Parent				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
4306147314aSFabien Parent			input-enable;
4316147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4326147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
4336147314aSFabien Parent		};
4346147314aSFabien Parent
4356147314aSFabien Parent		pins-insert {
4366147314aSFabien Parent			pinmux = <PINMUX_GPIO129__FUNC_GPIO129>;
4376147314aSFabien Parent			bias-pull-up;
4386147314aSFabien Parent		};
4396147314aSFabien Parent	};
4406147314aSFabien Parent
4416147314aSFabien Parent	mmc1_uhs_pins: mmc1-uhs-pins {
4426147314aSFabien Parent		pins-clk {
4436147314aSFabien Parent			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
4446147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4456147314aSFabien Parent			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
4466147314aSFabien Parent		};
4476147314aSFabien Parent
4486147314aSFabien Parent		pins-cmd-dat {
4496147314aSFabien Parent			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
4506147314aSFabien Parent				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
4516147314aSFabien Parent				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
4526147314aSFabien Parent				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
4536147314aSFabien Parent				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
4546147314aSFabien Parent			input-enable;
4556147314aSFabien Parent			drive-strength = <MTK_DRIVE_8mA>;
4566147314aSFabien Parent			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
4576147314aSFabien Parent		};
4586147314aSFabien Parent	};
4596147314aSFabien Parent
4606147314aSFabien Parent	uart0_pins: uart0-pins {
4616147314aSFabien Parent		pins {
4626147314aSFabien Parent			pinmux = <PINMUX_GPIO98__FUNC_UTXD0>,
4636147314aSFabien Parent				 <PINMUX_GPIO99__FUNC_URXD0>;
4646147314aSFabien Parent		};
4656147314aSFabien Parent	};
4666147314aSFabien Parent
4676147314aSFabien Parent	uart1_pins: uart1-pins {
4686147314aSFabien Parent		pins {
4696147314aSFabien Parent			pinmux = <PINMUX_GPIO102__FUNC_UTXD1>,
4706147314aSFabien Parent				 <PINMUX_GPIO103__FUNC_URXD1>;
4716147314aSFabien Parent		};
4726147314aSFabien Parent	};
4736147314aSFabien Parent};
4746147314aSFabien Parent
4756147314aSFabien Parent
4766147314aSFabien Parent&pmic {
4776147314aSFabien Parent	interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>;
4786147314aSFabien Parent};
4796147314aSFabien Parent
4806147314aSFabien Parent&uart0 {
4816147314aSFabien Parent	pinctrl-names = "default";
4826147314aSFabien Parent	pinctrl-0 = <&uart0_pins>;
4836147314aSFabien Parent	status = "okay";
4846147314aSFabien Parent};
4856147314aSFabien Parent
4867640d435SFabien Parent&uart1 {
4877640d435SFabien Parent	pinctrl-names = "default";
4887640d435SFabien Parent	pinctrl-0 = <&uart1_pins>;
4897640d435SFabien Parent	status = "okay";
4907640d435SFabien Parent};
4917640d435SFabien Parent
4926147314aSFabien Parent&u3phy0 {
4936147314aSFabien Parent	status = "okay";
4946147314aSFabien Parent};
4956147314aSFabien Parent
4966147314aSFabien Parent&u3phy1 {
4976147314aSFabien Parent	status = "okay";
4986147314aSFabien Parent};
4996147314aSFabien Parent
5006147314aSFabien Parent&u3phy2 {
5016147314aSFabien Parent	status = "okay";
5026147314aSFabien Parent};
5036147314aSFabien Parent
5046147314aSFabien Parent&u3phy3 {
5056147314aSFabien Parent	status = "okay";
5066147314aSFabien Parent};
5076147314aSFabien Parent
5086147314aSFabien Parent&xhci0 {
5096147314aSFabien Parent	vusb33-supply = <&mt6359_vusb_ldo_reg>;
5106147314aSFabien Parent	vbus-supply = <&otg_vbus_regulator>;
5116147314aSFabien Parent	status = "okay";
5126147314aSFabien Parent};
5136147314aSFabien Parent
5146147314aSFabien Parent&xhci1 {
5156147314aSFabien Parent	vusb33-supply = <&mt6359_vusb_ldo_reg>;
5166147314aSFabien Parent	status = "okay";
5176147314aSFabien Parent};
5186147314aSFabien Parent
5196147314aSFabien Parent&xhci2 {
5206147314aSFabien Parent	vusb33-supply = <&mt6359_vusb_ldo_reg>;
5216147314aSFabien Parent	status = "okay";
5226147314aSFabien Parent};
5236147314aSFabien Parent
5246147314aSFabien Parent&xhci3 {
5256147314aSFabien Parent	vusb33-supply = <&mt6359_vusb_ldo_reg>;
5266147314aSFabien Parent	status = "okay";
5276147314aSFabien Parent};
528