xref: /freebsd/sys/contrib/device-tree/src/arm64/mediatek/mt8395-genio-1200-evk.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
184943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT)
284943d6fSEmmanuel Vadot/*
384943d6fSEmmanuel Vadot * Copyright (C) 2023 MediaTek Inc.
484943d6fSEmmanuel Vadot * Author: Ben Lok <ben.lok@mediatek.com>
584943d6fSEmmanuel Vadot *	   Macpaul Lin <macpaul.lin@mediatek.com>
684943d6fSEmmanuel Vadot */
784943d6fSEmmanuel Vadot/dts-v1/;
884943d6fSEmmanuel Vadot
984943d6fSEmmanuel Vadot#include "mt8195.dtsi"
1084943d6fSEmmanuel Vadot#include "mt6359.dtsi"
1184943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
1284943d6fSEmmanuel Vadot#include <dt-bindings/input/input.h>
1384943d6fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
1484943d6fSEmmanuel Vadot#include <dt-bindings/pinctrl/mt8195-pinfunc.h>
1584943d6fSEmmanuel Vadot#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
1684943d6fSEmmanuel Vadot#include <dt-bindings/spmi/spmi.h>
1784943d6fSEmmanuel Vadot#include <dt-bindings/usb/pd.h>
1884943d6fSEmmanuel Vadot
1984943d6fSEmmanuel Vadot/ {
2084943d6fSEmmanuel Vadot	model = "MediaTek Genio 1200 EVK-P1V2-EMMC";
2184943d6fSEmmanuel Vadot	compatible = "mediatek,mt8395-evk", "mediatek,mt8395",
2284943d6fSEmmanuel Vadot		     "mediatek,mt8195";
2384943d6fSEmmanuel Vadot
2484943d6fSEmmanuel Vadot	aliases {
2584943d6fSEmmanuel Vadot		serial0 = &uart0;
2684943d6fSEmmanuel Vadot		ethernet0 = &eth;
2784943d6fSEmmanuel Vadot	};
2884943d6fSEmmanuel Vadot
2984943d6fSEmmanuel Vadot	chosen {
3084943d6fSEmmanuel Vadot		stdout-path = "serial0:921600n8";
3184943d6fSEmmanuel Vadot	};
3284943d6fSEmmanuel Vadot
3384943d6fSEmmanuel Vadot	firmware {
3484943d6fSEmmanuel Vadot		optee {
3584943d6fSEmmanuel Vadot			compatible = "linaro,optee-tz";
3684943d6fSEmmanuel Vadot			method = "smc";
3784943d6fSEmmanuel Vadot		};
3884943d6fSEmmanuel Vadot	};
3984943d6fSEmmanuel Vadot
4084943d6fSEmmanuel Vadot	memory@40000000 {
4184943d6fSEmmanuel Vadot		device_type = "memory";
4284943d6fSEmmanuel Vadot		reg = <0 0x40000000 0x2 0x00000000>;
4384943d6fSEmmanuel Vadot	};
4484943d6fSEmmanuel Vadot
4584943d6fSEmmanuel Vadot	reserved-memory {
4684943d6fSEmmanuel Vadot		#address-cells = <2>;
4784943d6fSEmmanuel Vadot		#size-cells = <2>;
4884943d6fSEmmanuel Vadot		ranges;
4984943d6fSEmmanuel Vadot
5084943d6fSEmmanuel Vadot		/*
5184943d6fSEmmanuel Vadot		 * 12 MiB reserved for OP-TEE (BL32)
5284943d6fSEmmanuel Vadot		 * +-----------------------+ 0x43e0_0000
5384943d6fSEmmanuel Vadot		 * |      SHMEM 2MiB       |
5484943d6fSEmmanuel Vadot		 * +-----------------------+ 0x43c0_0000
5584943d6fSEmmanuel Vadot		 * |        | TA_RAM  8MiB |
5684943d6fSEmmanuel Vadot		 * + TZDRAM +--------------+ 0x4340_0000
5784943d6fSEmmanuel Vadot		 * |        | TEE_RAM 2MiB |
5884943d6fSEmmanuel Vadot		 * +-----------------------+ 0x4320_0000
5984943d6fSEmmanuel Vadot		 */
6084943d6fSEmmanuel Vadot		optee_reserved: optee@43200000 {
6184943d6fSEmmanuel Vadot			no-map;
6284943d6fSEmmanuel Vadot			reg = <0 0x43200000 0 0x00c00000>;
6384943d6fSEmmanuel Vadot		};
6484943d6fSEmmanuel Vadot
6584943d6fSEmmanuel Vadot		scp_mem: memory@50000000 {
6684943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
6784943d6fSEmmanuel Vadot			reg = <0 0x50000000 0 0x2900000>;
6884943d6fSEmmanuel Vadot			no-map;
6984943d6fSEmmanuel Vadot		};
7084943d6fSEmmanuel Vadot
7184943d6fSEmmanuel Vadot		vpu_mem: memory@53000000 {
7284943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
7384943d6fSEmmanuel Vadot			reg = <0 0x53000000 0 0x1400000>; /* 20 MB */
7484943d6fSEmmanuel Vadot		};
7584943d6fSEmmanuel Vadot
7684943d6fSEmmanuel Vadot		/* 2 MiB reserved for ARM Trusted Firmware (BL31) */
7784943d6fSEmmanuel Vadot		bl31_secmon_mem: memory@54600000 {
7884943d6fSEmmanuel Vadot			no-map;
7984943d6fSEmmanuel Vadot			reg = <0 0x54600000 0x0 0x200000>;
8084943d6fSEmmanuel Vadot		};
8184943d6fSEmmanuel Vadot
8284943d6fSEmmanuel Vadot		snd_dma_mem: memory@60000000 {
8384943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
8484943d6fSEmmanuel Vadot			reg = <0 0x60000000 0 0x1100000>;
8584943d6fSEmmanuel Vadot			no-map;
8684943d6fSEmmanuel Vadot		};
8784943d6fSEmmanuel Vadot
8884943d6fSEmmanuel Vadot		apu_mem: memory@62000000 {
8984943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
9084943d6fSEmmanuel Vadot			reg = <0 0x62000000 0 0x1400000>; /* 20 MB */
9184943d6fSEmmanuel Vadot		};
9284943d6fSEmmanuel Vadot	};
9384943d6fSEmmanuel Vadot
9484943d6fSEmmanuel Vadot	backlight_lcd0: backlight-lcd0 {
9584943d6fSEmmanuel Vadot		compatible = "pwm-backlight";
9684943d6fSEmmanuel Vadot		pwms = <&disp_pwm0 0 500000>;
9784943d6fSEmmanuel Vadot		enable-gpios = <&pio 47 GPIO_ACTIVE_HIGH>;
9884943d6fSEmmanuel Vadot		brightness-levels = <0 1023>;
9984943d6fSEmmanuel Vadot		num-interpolated-steps = <1023>;
10084943d6fSEmmanuel Vadot		default-brightness-level = <576>;
10184943d6fSEmmanuel Vadot	};
10284943d6fSEmmanuel Vadot
10384943d6fSEmmanuel Vadot	backlight_lcd1: backlight-lcd1 {
10484943d6fSEmmanuel Vadot		compatible = "pwm-backlight";
10584943d6fSEmmanuel Vadot		pwms = <&disp_pwm1 0 500000>;
10684943d6fSEmmanuel Vadot		enable-gpios = <&pio 46 GPIO_ACTIVE_HIGH>;
10784943d6fSEmmanuel Vadot		brightness-levels = <0 1023>;
10884943d6fSEmmanuel Vadot		num-interpolated-steps = <1023>;
10984943d6fSEmmanuel Vadot		default-brightness-level = <576>;
11084943d6fSEmmanuel Vadot	};
11184943d6fSEmmanuel Vadot
11284943d6fSEmmanuel Vadot	can_clk: can-clk {
11384943d6fSEmmanuel Vadot		compatible = "fixed-clock";
11484943d6fSEmmanuel Vadot		#clock-cells = <0>;
11584943d6fSEmmanuel Vadot		clock-frequency = <20000000>;
11684943d6fSEmmanuel Vadot		clock-output-names = "can-clk";
11784943d6fSEmmanuel Vadot	};
11884943d6fSEmmanuel Vadot
11984943d6fSEmmanuel Vadot	edp_panel_fixed_3v3: regulator-0 {
12084943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
12184943d6fSEmmanuel Vadot		regulator-name = "edp_panel_3v3";
12284943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
12384943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
12484943d6fSEmmanuel Vadot		enable-active-high;
12584943d6fSEmmanuel Vadot		gpio = <&pio 6 GPIO_ACTIVE_HIGH>;
12684943d6fSEmmanuel Vadot		pinctrl-names = "default";
12784943d6fSEmmanuel Vadot		pinctrl-0 = <&edp_panel_3v3_en_pins>;
12884943d6fSEmmanuel Vadot	};
12984943d6fSEmmanuel Vadot
13084943d6fSEmmanuel Vadot	edp_panel_fixed_12v: regulator-1 {
13184943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
13284943d6fSEmmanuel Vadot		regulator-name = "edp_backlight_12v";
13384943d6fSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
13484943d6fSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
13584943d6fSEmmanuel Vadot		enable-active-high;
13684943d6fSEmmanuel Vadot		gpio = <&pio 96 GPIO_ACTIVE_HIGH>;
13784943d6fSEmmanuel Vadot		pinctrl-names = "default";
13884943d6fSEmmanuel Vadot		pinctrl-0 = <&edp_panel_12v_en_pins>;
13984943d6fSEmmanuel Vadot	};
14084943d6fSEmmanuel Vadot
14184943d6fSEmmanuel Vadot	keys: gpio-keys {
14284943d6fSEmmanuel Vadot		compatible = "gpio-keys";
14384943d6fSEmmanuel Vadot
14484943d6fSEmmanuel Vadot		button-volume-up {
14584943d6fSEmmanuel Vadot			wakeup-source;
14684943d6fSEmmanuel Vadot			debounce-interval = <100>;
14784943d6fSEmmanuel Vadot			gpios = <&pio 106 GPIO_ACTIVE_LOW>;
14884943d6fSEmmanuel Vadot			label = "volume_up";
14984943d6fSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
15084943d6fSEmmanuel Vadot		};
15184943d6fSEmmanuel Vadot	};
15284943d6fSEmmanuel Vadot
15384943d6fSEmmanuel Vadot	wifi_fixed_3v3: regulator-2 {
15484943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
15584943d6fSEmmanuel Vadot		regulator-name = "wifi_3v3";
15684943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
15784943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
15884943d6fSEmmanuel Vadot		gpio = <&pio 135 GPIO_ACTIVE_HIGH>;
15984943d6fSEmmanuel Vadot		enable-active-high;
16084943d6fSEmmanuel Vadot		regulator-always-on;
16184943d6fSEmmanuel Vadot	};
16284943d6fSEmmanuel Vadot};
16384943d6fSEmmanuel Vadot
16484943d6fSEmmanuel Vadot&disp_pwm0 {
16584943d6fSEmmanuel Vadot	pinctrl-names = "default";
16684943d6fSEmmanuel Vadot	pinctrl-0 = <&pwm0_default_pins>;
16784943d6fSEmmanuel Vadot	status = "okay";
16884943d6fSEmmanuel Vadot};
16984943d6fSEmmanuel Vadot
17084943d6fSEmmanuel Vadot&dmic_codec {
17184943d6fSEmmanuel Vadot	wakeup-delay-ms = <200>;
17284943d6fSEmmanuel Vadot};
17384943d6fSEmmanuel Vadot
17484943d6fSEmmanuel Vadot&eth {
17584943d6fSEmmanuel Vadot	phy-mode ="rgmii-rxid";
17684943d6fSEmmanuel Vadot	phy-handle = <&eth_phy0>;
17784943d6fSEmmanuel Vadot	snps,reset-gpio = <&pio 93 GPIO_ACTIVE_HIGH>;
17884943d6fSEmmanuel Vadot	snps,reset-delays-us = <0 10000 10000>;
17984943d6fSEmmanuel Vadot	mediatek,tx-delay-ps = <2030>;
18084943d6fSEmmanuel Vadot	mediatek,mac-wol;
18184943d6fSEmmanuel Vadot	pinctrl-names = "default", "sleep";
18284943d6fSEmmanuel Vadot	pinctrl-0 = <&eth_default_pins>;
18384943d6fSEmmanuel Vadot	pinctrl-1 = <&eth_sleep_pins>;
18484943d6fSEmmanuel Vadot	status = "okay";
18584943d6fSEmmanuel Vadot
18684943d6fSEmmanuel Vadot	mdio {
18784943d6fSEmmanuel Vadot		compatible = "snps,dwmac-mdio";
18884943d6fSEmmanuel Vadot		#address-cells = <1>;
18984943d6fSEmmanuel Vadot		#size-cells = <0>;
19084943d6fSEmmanuel Vadot		eth_phy0: eth-phy0@1 {
19184943d6fSEmmanuel Vadot			compatible = "ethernet-phy-id001c.c916";
19284943d6fSEmmanuel Vadot			reg = <0x1>;
19384943d6fSEmmanuel Vadot		};
19484943d6fSEmmanuel Vadot	};
19584943d6fSEmmanuel Vadot};
19684943d6fSEmmanuel Vadot
19784943d6fSEmmanuel Vadot&i2c0 {
19884943d6fSEmmanuel Vadot	clock-frequency = <400000>;
19984943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c0_pins>;
20084943d6fSEmmanuel Vadot	pinctrl-names = "default";
20184943d6fSEmmanuel Vadot	status = "okay";
20284943d6fSEmmanuel Vadot};
20384943d6fSEmmanuel Vadot
20484943d6fSEmmanuel Vadot&i2c1 {
20584943d6fSEmmanuel Vadot	clock-frequency = <400000>;
20684943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c1_pins>;
20784943d6fSEmmanuel Vadot	pinctrl-names = "default";
20884943d6fSEmmanuel Vadot	status = "okay";
20984943d6fSEmmanuel Vadot
21084943d6fSEmmanuel Vadot	touchscreen@5d {
21184943d6fSEmmanuel Vadot		compatible = "goodix,gt9271";
21284943d6fSEmmanuel Vadot		reg = <0x5d>;
213*8d13bc63SEmmanuel Vadot		interrupts-extended = <&pio 132 IRQ_TYPE_EDGE_RISING>;
21484943d6fSEmmanuel Vadot		irq-gpios = <&pio 132 GPIO_ACTIVE_HIGH>;
21584943d6fSEmmanuel Vadot		reset-gpios = <&pio 133 GPIO_ACTIVE_HIGH>;
21684943d6fSEmmanuel Vadot		AVDD28-supply = <&mt6360_ldo1>;
21784943d6fSEmmanuel Vadot		pinctrl-names = "default";
21884943d6fSEmmanuel Vadot		pinctrl-0 = <&touch_pins>;
21984943d6fSEmmanuel Vadot	};
22084943d6fSEmmanuel Vadot};
22184943d6fSEmmanuel Vadot
22284943d6fSEmmanuel Vadot&i2c2 {
22384943d6fSEmmanuel Vadot	clock-frequency = <400000>;
22484943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins>;
22584943d6fSEmmanuel Vadot	pinctrl-names = "default";
22684943d6fSEmmanuel Vadot	status = "okay";
22784943d6fSEmmanuel Vadot};
22884943d6fSEmmanuel Vadot
22984943d6fSEmmanuel Vadot&i2c6 {
23084943d6fSEmmanuel Vadot	clock-frequency = <400000>;
23184943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c6_pins>;
23284943d6fSEmmanuel Vadot	pinctrl-names = "default";
23384943d6fSEmmanuel Vadot	#address-cells = <1>;
23484943d6fSEmmanuel Vadot	#size-cells = <0>;
23584943d6fSEmmanuel Vadot	status = "okay";
23684943d6fSEmmanuel Vadot
23784943d6fSEmmanuel Vadot	mt6360: pmic@34 {
23884943d6fSEmmanuel Vadot		compatible = "mediatek,mt6360";
23984943d6fSEmmanuel Vadot		reg = <0x34>;
24084943d6fSEmmanuel Vadot		interrupt-parent = <&pio>;
24184943d6fSEmmanuel Vadot		interrupts = <128 IRQ_TYPE_EDGE_FALLING>;
24284943d6fSEmmanuel Vadot		interrupt-names = "IRQB";
24384943d6fSEmmanuel Vadot		interrupt-controller;
24484943d6fSEmmanuel Vadot		#interrupt-cells = <1>;
24584943d6fSEmmanuel Vadot		pinctrl-0 = <&mt6360_pins>;
24684943d6fSEmmanuel Vadot
24784943d6fSEmmanuel Vadot		charger {
24884943d6fSEmmanuel Vadot			compatible = "mediatek,mt6360-chg";
24984943d6fSEmmanuel Vadot			richtek,vinovp-microvolt = <14500000>;
25084943d6fSEmmanuel Vadot
25184943d6fSEmmanuel Vadot			otg_vbus_regulator: usb-otg-vbus-regulator {
25284943d6fSEmmanuel Vadot				regulator-name = "usb-otg-vbus";
25384943d6fSEmmanuel Vadot				regulator-min-microvolt = <4425000>;
25484943d6fSEmmanuel Vadot				regulator-max-microvolt = <5825000>;
25584943d6fSEmmanuel Vadot			};
25684943d6fSEmmanuel Vadot		};
25784943d6fSEmmanuel Vadot
25884943d6fSEmmanuel Vadot		regulator {
25984943d6fSEmmanuel Vadot			compatible = "mediatek,mt6360-regulator";
26084943d6fSEmmanuel Vadot			LDO_VIN3-supply = <&mt6360_buck2>;
26184943d6fSEmmanuel Vadot
26284943d6fSEmmanuel Vadot			mt6360_buck1: buck1 {
26384943d6fSEmmanuel Vadot				regulator-name = "emi_vdd2";
26484943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
26584943d6fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
26684943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
26784943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP
26884943d6fSEmmanuel Vadot							   MT6360_OPMODE_ULP>;
26984943d6fSEmmanuel Vadot				regulator-always-on;
27084943d6fSEmmanuel Vadot			};
27184943d6fSEmmanuel Vadot
27284943d6fSEmmanuel Vadot			mt6360_buck2: buck2 {
27384943d6fSEmmanuel Vadot				regulator-name = "emi_vddq";
27484943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
27584943d6fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
27684943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
27784943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP
27884943d6fSEmmanuel Vadot							   MT6360_OPMODE_ULP>;
27984943d6fSEmmanuel Vadot				regulator-always-on;
28084943d6fSEmmanuel Vadot			};
28184943d6fSEmmanuel Vadot
28284943d6fSEmmanuel Vadot			mt6360_ldo1: ldo1 {
28384943d6fSEmmanuel Vadot				regulator-name = "tp1_p3v0";
28484943d6fSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
28584943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
28684943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
28784943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
28884943d6fSEmmanuel Vadot				regulator-always-on;
28984943d6fSEmmanuel Vadot			};
29084943d6fSEmmanuel Vadot
29184943d6fSEmmanuel Vadot			mt6360_ldo2: ldo2 {
29284943d6fSEmmanuel Vadot				regulator-name = "panel1_p1v8";
29384943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
29484943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
29584943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
29684943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
29784943d6fSEmmanuel Vadot			};
29884943d6fSEmmanuel Vadot
29984943d6fSEmmanuel Vadot			mt6360_ldo3: ldo3 {
30084943d6fSEmmanuel Vadot				regulator-name = "vmc_pmu";
30184943d6fSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
30284943d6fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
30384943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
30484943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
30584943d6fSEmmanuel Vadot			};
30684943d6fSEmmanuel Vadot
30784943d6fSEmmanuel Vadot			mt6360_ldo5: ldo5 {
30884943d6fSEmmanuel Vadot				regulator-name = "vmch_pmu";
30984943d6fSEmmanuel Vadot				regulator-min-microvolt = <2700000>;
31084943d6fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
31184943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
31284943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
31384943d6fSEmmanuel Vadot			};
31484943d6fSEmmanuel Vadot
31584943d6fSEmmanuel Vadot			/* This is a measure point, which name is mt6360_ldo1 on schematic */
31684943d6fSEmmanuel Vadot			mt6360_ldo6: ldo6 {
31784943d6fSEmmanuel Vadot				regulator-name = "mt6360_ldo1";
31884943d6fSEmmanuel Vadot				regulator-min-microvolt = <500000>;
31984943d6fSEmmanuel Vadot				regulator-max-microvolt = <2100000>;
32084943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
32184943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
32284943d6fSEmmanuel Vadot			};
32384943d6fSEmmanuel Vadot
32484943d6fSEmmanuel Vadot			mt6360_ldo7: ldo7 {
32584943d6fSEmmanuel Vadot				regulator-name = "emi_vmddr_en";
32684943d6fSEmmanuel Vadot				regulator-min-microvolt = <500000>;
32784943d6fSEmmanuel Vadot				regulator-max-microvolt = <2100000>;
32884943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
32984943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
33084943d6fSEmmanuel Vadot				regulator-always-on;
33184943d6fSEmmanuel Vadot			};
33284943d6fSEmmanuel Vadot		};
33384943d6fSEmmanuel Vadot	};
33484943d6fSEmmanuel Vadot};
33584943d6fSEmmanuel Vadot
33684943d6fSEmmanuel Vadot&mfg0 {
33784943d6fSEmmanuel Vadot	domain-supply = <&mt6315_7_vbuck1>;
33884943d6fSEmmanuel Vadot};
33984943d6fSEmmanuel Vadot
34084943d6fSEmmanuel Vadot&mmc0 {
34184943d6fSEmmanuel Vadot	status = "okay";
34284943d6fSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
34384943d6fSEmmanuel Vadot	pinctrl-0 = <&mmc0_default_pins>;
34484943d6fSEmmanuel Vadot	pinctrl-1 = <&mmc0_uhs_pins>;
34584943d6fSEmmanuel Vadot	bus-width = <8>;
34684943d6fSEmmanuel Vadot	max-frequency = <200000000>;
34784943d6fSEmmanuel Vadot	cap-mmc-highspeed;
34884943d6fSEmmanuel Vadot	mmc-hs200-1_8v;
34984943d6fSEmmanuel Vadot	mmc-hs400-1_8v;
35084943d6fSEmmanuel Vadot	cap-mmc-hw-reset;
35184943d6fSEmmanuel Vadot	no-sdio;
35284943d6fSEmmanuel Vadot	no-sd;
35384943d6fSEmmanuel Vadot	hs400-ds-delay = <0x14c11>;
35484943d6fSEmmanuel Vadot	vmmc-supply = <&mt6359_vemc_1_ldo_reg>;
35584943d6fSEmmanuel Vadot	vqmmc-supply = <&mt6359_vufs_ldo_reg>;
35684943d6fSEmmanuel Vadot	non-removable;
35784943d6fSEmmanuel Vadot};
35884943d6fSEmmanuel Vadot
35984943d6fSEmmanuel Vadot&mmc1 {
36084943d6fSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
36184943d6fSEmmanuel Vadot	pinctrl-0 = <&mmc1_default_pins>;
36284943d6fSEmmanuel Vadot	pinctrl-1 = <&mmc1_uhs_pins>;
36384943d6fSEmmanuel Vadot	bus-width = <4>;
36484943d6fSEmmanuel Vadot	max-frequency = <200000000>;
36584943d6fSEmmanuel Vadot	cap-sd-highspeed;
36684943d6fSEmmanuel Vadot	sd-uhs-sdr50;
36784943d6fSEmmanuel Vadot	sd-uhs-sdr104;
36884943d6fSEmmanuel Vadot	no-mmc;
36984943d6fSEmmanuel Vadot	no-sdio;
37084943d6fSEmmanuel Vadot	vmmc-supply = <&mt6360_ldo5>;
37184943d6fSEmmanuel Vadot	vqmmc-supply = <&mt6360_ldo3>;
37284943d6fSEmmanuel Vadot	status = "okay";
37384943d6fSEmmanuel Vadot	non-removable;
37484943d6fSEmmanuel Vadot};
37584943d6fSEmmanuel Vadot
37684943d6fSEmmanuel Vadot&mt6359_vaud18_ldo_reg {
37784943d6fSEmmanuel Vadot	regulator-always-on;
37884943d6fSEmmanuel Vadot};
37984943d6fSEmmanuel Vadot
38084943d6fSEmmanuel Vadot&mt6359_vbbck_ldo_reg {
38184943d6fSEmmanuel Vadot	regulator-always-on;
38284943d6fSEmmanuel Vadot};
38384943d6fSEmmanuel Vadot
38484943d6fSEmmanuel Vadot/* For USB Hub */
38584943d6fSEmmanuel Vadot&mt6359_vcamio_ldo_reg {
38684943d6fSEmmanuel Vadot	regulator-always-on;
38784943d6fSEmmanuel Vadot};
38884943d6fSEmmanuel Vadot
38984943d6fSEmmanuel Vadot&mt6359_vcn33_2_bt_ldo_reg {
39084943d6fSEmmanuel Vadot	regulator-min-microvolt = <3300000>;
39184943d6fSEmmanuel Vadot	regulator-max-microvolt = <3300000>;
39284943d6fSEmmanuel Vadot};
39384943d6fSEmmanuel Vadot
39484943d6fSEmmanuel Vadot&mt6359_vcore_buck_reg {
39584943d6fSEmmanuel Vadot	regulator-always-on;
39684943d6fSEmmanuel Vadot};
39784943d6fSEmmanuel Vadot
39884943d6fSEmmanuel Vadot&mt6359_vgpu11_buck_reg {
39984943d6fSEmmanuel Vadot	regulator-always-on;
40084943d6fSEmmanuel Vadot};
40184943d6fSEmmanuel Vadot
40284943d6fSEmmanuel Vadot&mt6359_vpu_buck_reg {
40384943d6fSEmmanuel Vadot	regulator-always-on;
40484943d6fSEmmanuel Vadot};
40584943d6fSEmmanuel Vadot
40684943d6fSEmmanuel Vadot&mt6359_vrf12_ldo_reg {
40784943d6fSEmmanuel Vadot	regulator-always-on;
40884943d6fSEmmanuel Vadot};
40984943d6fSEmmanuel Vadot
41084943d6fSEmmanuel Vadot&mt6359codec {
41184943d6fSEmmanuel Vadot	mediatek,mic-type-0 = <1>; /* ACC */
41284943d6fSEmmanuel Vadot	mediatek,mic-type-1 = <3>; /* DCC */
41384943d6fSEmmanuel Vadot	mediatek,mic-type-2 = <1>; /* ACC */
41484943d6fSEmmanuel Vadot};
41584943d6fSEmmanuel Vadot
41684943d6fSEmmanuel Vadot&pcie0 {
41784943d6fSEmmanuel Vadot	pinctrl-names = "default", "idle";
41884943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie0_default_pins>;
41984943d6fSEmmanuel Vadot	pinctrl-1 = <&pcie0_idle_pins>;
42084943d6fSEmmanuel Vadot	status = "okay";
42184943d6fSEmmanuel Vadot};
42284943d6fSEmmanuel Vadot
42384943d6fSEmmanuel Vadot&pcie1 {
42484943d6fSEmmanuel Vadot	pinctrl-names = "default";
42584943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie1_default_pins>;
42684943d6fSEmmanuel Vadot	status = "disabled";
42784943d6fSEmmanuel Vadot};
42884943d6fSEmmanuel Vadot
42984943d6fSEmmanuel Vadot&pciephy {
43084943d6fSEmmanuel Vadot	status = "okay";
43184943d6fSEmmanuel Vadot};
43284943d6fSEmmanuel Vadot
43384943d6fSEmmanuel Vadot&pio {
43484943d6fSEmmanuel Vadot	audio_default_pins: audio-default-pins {
43584943d6fSEmmanuel Vadot		pins-cmd-dat {
43684943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO61__FUNC_DMIC1_CLK>,
43784943d6fSEmmanuel Vadot				 <PINMUX_GPIO62__FUNC_DMIC1_DAT>,
43884943d6fSEmmanuel Vadot				 <PINMUX_GPIO65__FUNC_PCM_DO>,
43984943d6fSEmmanuel Vadot				 <PINMUX_GPIO66__FUNC_PCM_CLK>,
44084943d6fSEmmanuel Vadot				 <PINMUX_GPIO67__FUNC_PCM_DI>,
44184943d6fSEmmanuel Vadot				 <PINMUX_GPIO68__FUNC_PCM_SYNC>,
44284943d6fSEmmanuel Vadot				 <PINMUX_GPIO69__FUNC_AUD_CLK_MOSI>,
44384943d6fSEmmanuel Vadot				 <PINMUX_GPIO70__FUNC_AUD_SYNC_MOSI>,
44484943d6fSEmmanuel Vadot				 <PINMUX_GPIO71__FUNC_AUD_DAT_MOSI0>,
44584943d6fSEmmanuel Vadot				 <PINMUX_GPIO72__FUNC_AUD_DAT_MOSI1>,
44684943d6fSEmmanuel Vadot				 <PINMUX_GPIO73__FUNC_AUD_DAT_MISO0>,
44784943d6fSEmmanuel Vadot				 <PINMUX_GPIO74__FUNC_AUD_DAT_MISO1>,
44884943d6fSEmmanuel Vadot				 <PINMUX_GPIO75__FUNC_AUD_DAT_MISO2>;
44984943d6fSEmmanuel Vadot		};
45084943d6fSEmmanuel Vadot	};
45184943d6fSEmmanuel Vadot
45284943d6fSEmmanuel Vadot	disp_pwm1_default_pins: disp-pwm1-default-pins {
45384943d6fSEmmanuel Vadot		pins1 {
45484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO104__FUNC_DISP_PWM1>;
45584943d6fSEmmanuel Vadot		};
45684943d6fSEmmanuel Vadot	};
45784943d6fSEmmanuel Vadot
45884943d6fSEmmanuel Vadot	edp_panel_12v_en_pins: edp-panel-12v-en-pins {
45984943d6fSEmmanuel Vadot		pins1 {
46084943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO96__FUNC_GPIO96>;
46184943d6fSEmmanuel Vadot			output-high;
46284943d6fSEmmanuel Vadot		};
46384943d6fSEmmanuel Vadot	};
46484943d6fSEmmanuel Vadot
46584943d6fSEmmanuel Vadot	edp_panel_3v3_en_pins: edp-panel-3v3-en-pins {
46684943d6fSEmmanuel Vadot		pins1 {
46784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO6__FUNC_GPIO6>;
46884943d6fSEmmanuel Vadot			output-high;
46984943d6fSEmmanuel Vadot		};
47084943d6fSEmmanuel Vadot	};
47184943d6fSEmmanuel Vadot
47284943d6fSEmmanuel Vadot	eth_default_pins: eth-default-pins {
47384943d6fSEmmanuel Vadot		pins-cc {
47484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO85__FUNC_GBE_TXC>,
47584943d6fSEmmanuel Vadot				 <PINMUX_GPIO86__FUNC_GBE_RXC>,
47684943d6fSEmmanuel Vadot				 <PINMUX_GPIO87__FUNC_GBE_RXDV>,
47784943d6fSEmmanuel Vadot				 <PINMUX_GPIO88__FUNC_GBE_TXEN>;
47884943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
47984943d6fSEmmanuel Vadot		};
48084943d6fSEmmanuel Vadot
48184943d6fSEmmanuel Vadot		pins-mdio {
48284943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO89__FUNC_GBE_MDC>,
48384943d6fSEmmanuel Vadot				 <PINMUX_GPIO90__FUNC_GBE_MDIO>;
48484943d6fSEmmanuel Vadot			input-enable;
48584943d6fSEmmanuel Vadot		};
48684943d6fSEmmanuel Vadot
48784943d6fSEmmanuel Vadot		pins-power {
48884943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO91__FUNC_GPIO91>,
48984943d6fSEmmanuel Vadot				 <PINMUX_GPIO92__FUNC_GPIO92>;
49084943d6fSEmmanuel Vadot			output-high;
49184943d6fSEmmanuel Vadot		};
49284943d6fSEmmanuel Vadot
49384943d6fSEmmanuel Vadot		pins-rxd {
49484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO81__FUNC_GBE_RXD3>,
49584943d6fSEmmanuel Vadot				 <PINMUX_GPIO82__FUNC_GBE_RXD2>,
49684943d6fSEmmanuel Vadot				 <PINMUX_GPIO83__FUNC_GBE_RXD1>,
49784943d6fSEmmanuel Vadot				 <PINMUX_GPIO84__FUNC_GBE_RXD0>;
49884943d6fSEmmanuel Vadot		};
49984943d6fSEmmanuel Vadot
50084943d6fSEmmanuel Vadot		pins-txd {
50184943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO77__FUNC_GBE_TXD3>,
50284943d6fSEmmanuel Vadot				 <PINMUX_GPIO78__FUNC_GBE_TXD2>,
50384943d6fSEmmanuel Vadot				 <PINMUX_GPIO79__FUNC_GBE_TXD1>,
50484943d6fSEmmanuel Vadot				 <PINMUX_GPIO80__FUNC_GBE_TXD0>;
50584943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
50684943d6fSEmmanuel Vadot		};
50784943d6fSEmmanuel Vadot	};
50884943d6fSEmmanuel Vadot
50984943d6fSEmmanuel Vadot	eth_sleep_pins: eth-sleep-pins {
51084943d6fSEmmanuel Vadot		pins-cc {
51184943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO85__FUNC_GPIO85>,
51284943d6fSEmmanuel Vadot				 <PINMUX_GPIO86__FUNC_GPIO86>,
51384943d6fSEmmanuel Vadot				 <PINMUX_GPIO87__FUNC_GPIO87>,
51484943d6fSEmmanuel Vadot				 <PINMUX_GPIO88__FUNC_GPIO88>;
51584943d6fSEmmanuel Vadot		};
51684943d6fSEmmanuel Vadot
51784943d6fSEmmanuel Vadot		pins-mdio {
51884943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO89__FUNC_GPIO89>,
51984943d6fSEmmanuel Vadot				 <PINMUX_GPIO90__FUNC_GPIO90>;
52084943d6fSEmmanuel Vadot			input-disable;
52184943d6fSEmmanuel Vadot			bias-disable;
52284943d6fSEmmanuel Vadot		};
52384943d6fSEmmanuel Vadot
52484943d6fSEmmanuel Vadot		pins-rxd {
52584943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO81__FUNC_GPIO81>,
52684943d6fSEmmanuel Vadot				 <PINMUX_GPIO82__FUNC_GPIO82>,
52784943d6fSEmmanuel Vadot				 <PINMUX_GPIO83__FUNC_GPIO83>,
52884943d6fSEmmanuel Vadot				 <PINMUX_GPIO84__FUNC_GPIO84>;
52984943d6fSEmmanuel Vadot		};
53084943d6fSEmmanuel Vadot
53184943d6fSEmmanuel Vadot		pins-txd {
53284943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO77__FUNC_GPIO77>,
53384943d6fSEmmanuel Vadot				 <PINMUX_GPIO78__FUNC_GPIO78>,
53484943d6fSEmmanuel Vadot				 <PINMUX_GPIO79__FUNC_GPIO79>,
53584943d6fSEmmanuel Vadot				 <PINMUX_GPIO80__FUNC_GPIO80>;
53684943d6fSEmmanuel Vadot		};
53784943d6fSEmmanuel Vadot	};
53884943d6fSEmmanuel Vadot
53984943d6fSEmmanuel Vadot	gpio_key_pins: gpio-keys-pins {
54084943d6fSEmmanuel Vadot		pins {
54184943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO106__FUNC_GPIO106>;
54284943d6fSEmmanuel Vadot			bias-pull-up;
54384943d6fSEmmanuel Vadot			input-enable;
54484943d6fSEmmanuel Vadot		};
54584943d6fSEmmanuel Vadot	};
54684943d6fSEmmanuel Vadot
54784943d6fSEmmanuel Vadot	i2c0_pins: i2c0-pins {
54884943d6fSEmmanuel Vadot		pins {
54984943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO8__FUNC_SDA0>,
55084943d6fSEmmanuel Vadot				 <PINMUX_GPIO9__FUNC_SCL0>;
55184943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
55284943d6fSEmmanuel Vadot			drive-strength-microamp = <1000>;
55384943d6fSEmmanuel Vadot		};
55484943d6fSEmmanuel Vadot	};
55584943d6fSEmmanuel Vadot
55684943d6fSEmmanuel Vadot	i2c1_pins: i2c1-pins {
55784943d6fSEmmanuel Vadot		pins {
55884943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO10__FUNC_SDA1>,
55984943d6fSEmmanuel Vadot				 <PINMUX_GPIO11__FUNC_SCL1>;
56084943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
56184943d6fSEmmanuel Vadot			drive-strength-microamp = <1000>;
56284943d6fSEmmanuel Vadot		};
56384943d6fSEmmanuel Vadot	};
56484943d6fSEmmanuel Vadot
56584943d6fSEmmanuel Vadot	i2c2_pins: i2c2-pins {
56684943d6fSEmmanuel Vadot		pins {
56784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO12__FUNC_SDA2>,
56884943d6fSEmmanuel Vadot				 <PINMUX_GPIO13__FUNC_SCL2>;
56984943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
57084943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
57184943d6fSEmmanuel Vadot		};
57284943d6fSEmmanuel Vadot	};
57384943d6fSEmmanuel Vadot
57484943d6fSEmmanuel Vadot	i2c6_pins: i2c6-pins {
57584943d6fSEmmanuel Vadot		pins {
57684943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO25__FUNC_SDA6>,
57784943d6fSEmmanuel Vadot				 <PINMUX_GPIO26__FUNC_SCL6>;
57884943d6fSEmmanuel Vadot			bias-pull-up;
57984943d6fSEmmanuel Vadot		};
58084943d6fSEmmanuel Vadot	};
58184943d6fSEmmanuel Vadot
58284943d6fSEmmanuel Vadot	mmc0_default_pins: mmc0-default-pins {
58384943d6fSEmmanuel Vadot		pins-clk {
58484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
58584943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
58684943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
58784943d6fSEmmanuel Vadot		};
58884943d6fSEmmanuel Vadot
58984943d6fSEmmanuel Vadot		pins-cmd-dat {
59084943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
59184943d6fSEmmanuel Vadot				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
59284943d6fSEmmanuel Vadot				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
59384943d6fSEmmanuel Vadot				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
59484943d6fSEmmanuel Vadot				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
59584943d6fSEmmanuel Vadot				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
59684943d6fSEmmanuel Vadot				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
59784943d6fSEmmanuel Vadot				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
59884943d6fSEmmanuel Vadot				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
59984943d6fSEmmanuel Vadot			input-enable;
60084943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
60184943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
60284943d6fSEmmanuel Vadot		};
60384943d6fSEmmanuel Vadot
60484943d6fSEmmanuel Vadot		pins-rst {
60584943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
60684943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
60784943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
60884943d6fSEmmanuel Vadot		};
60984943d6fSEmmanuel Vadot	};
61084943d6fSEmmanuel Vadot
61184943d6fSEmmanuel Vadot	mmc0_uhs_pins: mmc0-uhs-pins {
61284943d6fSEmmanuel Vadot		pins-clk {
61384943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
61484943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
61584943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
61684943d6fSEmmanuel Vadot		};
61784943d6fSEmmanuel Vadot
61884943d6fSEmmanuel Vadot		pins-cmd-dat {
61984943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
62084943d6fSEmmanuel Vadot				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
62184943d6fSEmmanuel Vadot				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
62284943d6fSEmmanuel Vadot				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
62384943d6fSEmmanuel Vadot				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
62484943d6fSEmmanuel Vadot				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
62584943d6fSEmmanuel Vadot				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
62684943d6fSEmmanuel Vadot				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
62784943d6fSEmmanuel Vadot				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
62884943d6fSEmmanuel Vadot			input-enable;
62984943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
63084943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
63184943d6fSEmmanuel Vadot		};
63284943d6fSEmmanuel Vadot
63384943d6fSEmmanuel Vadot		pins-ds {
63484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO127__FUNC_MSDC0_DSL>;
63584943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
63684943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
63784943d6fSEmmanuel Vadot		};
63884943d6fSEmmanuel Vadot
63984943d6fSEmmanuel Vadot		pins-rst {
64084943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
64184943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
64284943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
64384943d6fSEmmanuel Vadot		};
64484943d6fSEmmanuel Vadot	};
64584943d6fSEmmanuel Vadot
64684943d6fSEmmanuel Vadot	mmc1_default_pins: mmc1-default-pins {
64784943d6fSEmmanuel Vadot		pins-clk {
64884943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
64984943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
65084943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
65184943d6fSEmmanuel Vadot		};
65284943d6fSEmmanuel Vadot
65384943d6fSEmmanuel Vadot		pins-cmd-dat {
65484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
65584943d6fSEmmanuel Vadot				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
65684943d6fSEmmanuel Vadot				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
65784943d6fSEmmanuel Vadot				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
65884943d6fSEmmanuel Vadot				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
65984943d6fSEmmanuel Vadot			input-enable;
66084943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
66184943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
66284943d6fSEmmanuel Vadot		};
66384943d6fSEmmanuel Vadot	};
66484943d6fSEmmanuel Vadot
66584943d6fSEmmanuel Vadot	mmc1_uhs_pins: mmc1-uhs-pins {
66684943d6fSEmmanuel Vadot		pins-clk {
66784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
66884943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
66984943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
67084943d6fSEmmanuel Vadot		};
67184943d6fSEmmanuel Vadot
67284943d6fSEmmanuel Vadot		pins-cmd-dat {
67384943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
67484943d6fSEmmanuel Vadot				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
67584943d6fSEmmanuel Vadot				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
67684943d6fSEmmanuel Vadot				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
67784943d6fSEmmanuel Vadot				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
67884943d6fSEmmanuel Vadot			input-enable;
67984943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
68084943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
68184943d6fSEmmanuel Vadot		};
68284943d6fSEmmanuel Vadot	};
68384943d6fSEmmanuel Vadot
68484943d6fSEmmanuel Vadot	mt6360_pins: mt6360-pins {
68584943d6fSEmmanuel Vadot		pins {
68684943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO17__FUNC_GPIO17>,
68784943d6fSEmmanuel Vadot				 <PINMUX_GPIO128__FUNC_GPIO128>;
68884943d6fSEmmanuel Vadot			input-enable;
68984943d6fSEmmanuel Vadot			bias-pull-up;
69084943d6fSEmmanuel Vadot		};
69184943d6fSEmmanuel Vadot	};
69284943d6fSEmmanuel Vadot
69384943d6fSEmmanuel Vadot	pcie0_default_pins: pcie0-default-pins {
69484943d6fSEmmanuel Vadot		pins {
69584943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO19__FUNC_WAKEN>,
69684943d6fSEmmanuel Vadot				 <PINMUX_GPIO20__FUNC_PERSTN>,
69784943d6fSEmmanuel Vadot				 <PINMUX_GPIO21__FUNC_CLKREQN>;
69884943d6fSEmmanuel Vadot			bias-pull-up;
69984943d6fSEmmanuel Vadot		};
70084943d6fSEmmanuel Vadot	};
70184943d6fSEmmanuel Vadot
70284943d6fSEmmanuel Vadot	pcie0_idle_pins: pcie0-idle-pins {
70384943d6fSEmmanuel Vadot		pins {
70484943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO20__FUNC_GPIO20>;
70584943d6fSEmmanuel Vadot			bias-disable;
70684943d6fSEmmanuel Vadot			output-low;
70784943d6fSEmmanuel Vadot		};
70884943d6fSEmmanuel Vadot	};
70984943d6fSEmmanuel Vadot
71084943d6fSEmmanuel Vadot	pcie1_default_pins: pcie1-default-pins {
71184943d6fSEmmanuel Vadot		pins {
71284943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO22__FUNC_PERSTN_1>,
71384943d6fSEmmanuel Vadot				 <PINMUX_GPIO23__FUNC_CLKREQN_1>,
71484943d6fSEmmanuel Vadot				 <PINMUX_GPIO24__FUNC_WAKEN_1>;
71584943d6fSEmmanuel Vadot			bias-pull-up;
71684943d6fSEmmanuel Vadot		};
71784943d6fSEmmanuel Vadot	};
71884943d6fSEmmanuel Vadot
71984943d6fSEmmanuel Vadot	pwm0_default_pins: pwm0-default-pins {
72084943d6fSEmmanuel Vadot		pins-cmd-dat {
72184943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO97__FUNC_DISP_PWM0>;
72284943d6fSEmmanuel Vadot		};
72384943d6fSEmmanuel Vadot	};
72484943d6fSEmmanuel Vadot
72584943d6fSEmmanuel Vadot	spi1_pins: spi1-pins {
72684943d6fSEmmanuel Vadot		pins {
72784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO136__FUNC_SPIM1_CSB>,
72884943d6fSEmmanuel Vadot				 <PINMUX_GPIO137__FUNC_SPIM1_CLK>,
72984943d6fSEmmanuel Vadot				 <PINMUX_GPIO138__FUNC_SPIM1_MO>,
73084943d6fSEmmanuel Vadot				 <PINMUX_GPIO139__FUNC_SPIM1_MI>;
73184943d6fSEmmanuel Vadot			bias-disable;
73284943d6fSEmmanuel Vadot		};
73384943d6fSEmmanuel Vadot	};
73484943d6fSEmmanuel Vadot
73584943d6fSEmmanuel Vadot	spi2_pins: spi-pins {
73684943d6fSEmmanuel Vadot		pins {
73784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO140__FUNC_SPIM2_CSB>,
73884943d6fSEmmanuel Vadot				 <PINMUX_GPIO141__FUNC_SPIM2_CLK>,
73984943d6fSEmmanuel Vadot				 <PINMUX_GPIO142__FUNC_SPIM2_MO>,
74084943d6fSEmmanuel Vadot				 <PINMUX_GPIO143__FUNC_SPIM2_MI>;
74184943d6fSEmmanuel Vadot			bias-disable;
74284943d6fSEmmanuel Vadot		};
74384943d6fSEmmanuel Vadot	};
74484943d6fSEmmanuel Vadot
74584943d6fSEmmanuel Vadot	touch_pins: touch-pins {
74684943d6fSEmmanuel Vadot		pins-irq {
74784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO132__FUNC_GPIO132>;
74884943d6fSEmmanuel Vadot			input-enable;
74984943d6fSEmmanuel Vadot			bias-disable;
75084943d6fSEmmanuel Vadot		};
75184943d6fSEmmanuel Vadot
75284943d6fSEmmanuel Vadot		pins-reset {
75384943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO133__FUNC_GPIO133>;
75484943d6fSEmmanuel Vadot			output-high;
75584943d6fSEmmanuel Vadot		};
75684943d6fSEmmanuel Vadot	};
75784943d6fSEmmanuel Vadot
75884943d6fSEmmanuel Vadot	uart0_pins: uart0-pins {
75984943d6fSEmmanuel Vadot		pins {
76084943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO98__FUNC_UTXD0>,
76184943d6fSEmmanuel Vadot				 <PINMUX_GPIO99__FUNC_URXD0>;
76284943d6fSEmmanuel Vadot		};
76384943d6fSEmmanuel Vadot	};
76484943d6fSEmmanuel Vadot
76584943d6fSEmmanuel Vadot	uart1_pins: uart1-pins {
76684943d6fSEmmanuel Vadot		pins {
76784943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO100__FUNC_URTS1>,
76884943d6fSEmmanuel Vadot				 <PINMUX_GPIO101__FUNC_UCTS1>,
76984943d6fSEmmanuel Vadot				 <PINMUX_GPIO102__FUNC_UTXD1>,
77084943d6fSEmmanuel Vadot				 <PINMUX_GPIO103__FUNC_URXD1>;
77184943d6fSEmmanuel Vadot		};
77284943d6fSEmmanuel Vadot	};
77384943d6fSEmmanuel Vadot};
77484943d6fSEmmanuel Vadot
77584943d6fSEmmanuel Vadot&pmic {
776*8d13bc63SEmmanuel Vadot	interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>;
77784943d6fSEmmanuel Vadot};
77884943d6fSEmmanuel Vadot
77984943d6fSEmmanuel Vadot&scp {
78084943d6fSEmmanuel Vadot	memory-region = <&scp_mem>;
78184943d6fSEmmanuel Vadot	status = "okay";
78284943d6fSEmmanuel Vadot};
78384943d6fSEmmanuel Vadot
78484943d6fSEmmanuel Vadot&spi1 {
78584943d6fSEmmanuel Vadot	pinctrl-0 = <&spi1_pins>;
78684943d6fSEmmanuel Vadot	pinctrl-names = "default";
78784943d6fSEmmanuel Vadot	mediatek,pad-select = <0>;
78884943d6fSEmmanuel Vadot	#address-cells = <1>;
78984943d6fSEmmanuel Vadot	#size-cells = <0>;
79084943d6fSEmmanuel Vadot	status = "okay";
79184943d6fSEmmanuel Vadot	cs-gpios = <&pio 64 GPIO_ACTIVE_LOW>;
79284943d6fSEmmanuel Vadot
79384943d6fSEmmanuel Vadot	can0: can@0 {
79484943d6fSEmmanuel Vadot		compatible = "microchip,mcp2518fd";
79584943d6fSEmmanuel Vadot		reg = <0>;
79684943d6fSEmmanuel Vadot		clocks = <&can_clk>;
79784943d6fSEmmanuel Vadot		spi-max-frequency = <20000000>;
79884943d6fSEmmanuel Vadot		interrupts-extended = <&pio 16 IRQ_TYPE_LEVEL_LOW>;
79984943d6fSEmmanuel Vadot		vdd-supply = <&mt6359_vcn33_2_bt_ldo_reg>;
80084943d6fSEmmanuel Vadot		xceiver-supply = <&mt6359_vcn33_2_bt_ldo_reg>;
80184943d6fSEmmanuel Vadot	};
80284943d6fSEmmanuel Vadot};
80384943d6fSEmmanuel Vadot
80484943d6fSEmmanuel Vadot&spi2 {
80584943d6fSEmmanuel Vadot	pinctrl-0 = <&spi2_pins>;
80684943d6fSEmmanuel Vadot	pinctrl-names = "default";
80784943d6fSEmmanuel Vadot	mediatek,pad-select = <0>;
80884943d6fSEmmanuel Vadot	#address-cells = <1>;
80984943d6fSEmmanuel Vadot	#size-cells = <0>;
81084943d6fSEmmanuel Vadot	status = "okay";
81184943d6fSEmmanuel Vadot};
81284943d6fSEmmanuel Vadot
81384943d6fSEmmanuel Vadot&spmi {
81484943d6fSEmmanuel Vadot	#address-cells = <2>;
81584943d6fSEmmanuel Vadot	#size-cells = <0>;
81684943d6fSEmmanuel Vadot
81784943d6fSEmmanuel Vadot	mt6315_6: pmic@6 {
81884943d6fSEmmanuel Vadot		compatible = "mediatek,mt6315-regulator";
81984943d6fSEmmanuel Vadot		reg = <0x6 SPMI_USID>;
82084943d6fSEmmanuel Vadot
82184943d6fSEmmanuel Vadot		regulators {
82284943d6fSEmmanuel Vadot			mt6315_6_vbuck1: vbuck1 {
82384943d6fSEmmanuel Vadot				regulator-compatible = "vbuck1";
82484943d6fSEmmanuel Vadot				regulator-name = "Vbcpu";
82584943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
82684943d6fSEmmanuel Vadot				regulator-max-microvolt = <1193750>;
82784943d6fSEmmanuel Vadot				regulator-enable-ramp-delay = <256>;
82884943d6fSEmmanuel Vadot				regulator-allowed-modes = <0 1 2>;
82984943d6fSEmmanuel Vadot				regulator-always-on;
83084943d6fSEmmanuel Vadot			};
83184943d6fSEmmanuel Vadot		};
83284943d6fSEmmanuel Vadot	};
83384943d6fSEmmanuel Vadot
83484943d6fSEmmanuel Vadot	mt6315_7: pmic@7 {
83584943d6fSEmmanuel Vadot		compatible = "mediatek,mt6315-regulator";
83684943d6fSEmmanuel Vadot		reg = <0x7 SPMI_USID>;
83784943d6fSEmmanuel Vadot
83884943d6fSEmmanuel Vadot		regulators {
83984943d6fSEmmanuel Vadot			mt6315_7_vbuck1: vbuck1 {
84084943d6fSEmmanuel Vadot				regulator-compatible = "vbuck1";
84184943d6fSEmmanuel Vadot				regulator-name = "Vgpu";
84284943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
84384943d6fSEmmanuel Vadot				regulator-max-microvolt = <1193750>;
84484943d6fSEmmanuel Vadot				regulator-enable-ramp-delay = <256>;
84584943d6fSEmmanuel Vadot				regulator-allowed-modes = <0 1 2>;
84684943d6fSEmmanuel Vadot			};
84784943d6fSEmmanuel Vadot		};
84884943d6fSEmmanuel Vadot	};
84984943d6fSEmmanuel Vadot};
85084943d6fSEmmanuel Vadot
85184943d6fSEmmanuel Vadot&u3phy0 {
85284943d6fSEmmanuel Vadot	status = "okay";
85384943d6fSEmmanuel Vadot};
85484943d6fSEmmanuel Vadot
85584943d6fSEmmanuel Vadot&u3phy1 {
85684943d6fSEmmanuel Vadot	status = "okay";
85784943d6fSEmmanuel Vadot};
85884943d6fSEmmanuel Vadot
85984943d6fSEmmanuel Vadot&u3phy2 {
86084943d6fSEmmanuel Vadot	status = "okay";
86184943d6fSEmmanuel Vadot};
86284943d6fSEmmanuel Vadot
86384943d6fSEmmanuel Vadot&u3phy3 {
86484943d6fSEmmanuel Vadot	status = "okay";
86584943d6fSEmmanuel Vadot};
86684943d6fSEmmanuel Vadot
86784943d6fSEmmanuel Vadot&uart0 {
86884943d6fSEmmanuel Vadot	pinctrl-0 = <&uart0_pins>;
86984943d6fSEmmanuel Vadot	pinctrl-names = "default";
87084943d6fSEmmanuel Vadot	status = "okay";
87184943d6fSEmmanuel Vadot};
87284943d6fSEmmanuel Vadot
87384943d6fSEmmanuel Vadot&uart1 {
87484943d6fSEmmanuel Vadot	pinctrl-0 = <&uart1_pins>;
87584943d6fSEmmanuel Vadot	pinctrl-names = "default";
87684943d6fSEmmanuel Vadot	status = "okay";
87784943d6fSEmmanuel Vadot};
87884943d6fSEmmanuel Vadot
87984943d6fSEmmanuel Vadot&ufsphy {
88084943d6fSEmmanuel Vadot	status = "disabled";
88184943d6fSEmmanuel Vadot};
88284943d6fSEmmanuel Vadot
88384943d6fSEmmanuel Vadot&xhci0 {
88484943d6fSEmmanuel Vadot	status = "okay";
88584943d6fSEmmanuel Vadot};
88684943d6fSEmmanuel Vadot
88784943d6fSEmmanuel Vadot&xhci1 {
88884943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
88984943d6fSEmmanuel Vadot	status = "okay";
89084943d6fSEmmanuel Vadot};
89184943d6fSEmmanuel Vadot
89284943d6fSEmmanuel Vadot&xhci2 {
89384943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
89484943d6fSEmmanuel Vadot	status = "okay";
89584943d6fSEmmanuel Vadot};
89684943d6fSEmmanuel Vadot
89784943d6fSEmmanuel Vadot&xhci3 {
89884943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
89984943d6fSEmmanuel Vadot	status = "okay";
90084943d6fSEmmanuel Vadot};
901