xref: /freebsd/sys/contrib/device-tree/src/arm64/mediatek/mt8395-genio-1200-evk.dts (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1*84943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*84943d6fSEmmanuel Vadot/*
3*84943d6fSEmmanuel Vadot * Copyright (C) 2023 MediaTek Inc.
4*84943d6fSEmmanuel Vadot * Author: Ben Lok <ben.lok@mediatek.com>
5*84943d6fSEmmanuel Vadot *	   Macpaul Lin <macpaul.lin@mediatek.com>
6*84943d6fSEmmanuel Vadot */
7*84943d6fSEmmanuel Vadot/dts-v1/;
8*84943d6fSEmmanuel Vadot
9*84943d6fSEmmanuel Vadot#include "mt8195.dtsi"
10*84943d6fSEmmanuel Vadot#include "mt6359.dtsi"
11*84943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
12*84943d6fSEmmanuel Vadot#include <dt-bindings/input/input.h>
13*84943d6fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
14*84943d6fSEmmanuel Vadot#include <dt-bindings/pinctrl/mt8195-pinfunc.h>
15*84943d6fSEmmanuel Vadot#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
16*84943d6fSEmmanuel Vadot#include <dt-bindings/spmi/spmi.h>
17*84943d6fSEmmanuel Vadot#include <dt-bindings/usb/pd.h>
18*84943d6fSEmmanuel Vadot
19*84943d6fSEmmanuel Vadot/ {
20*84943d6fSEmmanuel Vadot	model = "MediaTek Genio 1200 EVK-P1V2-EMMC";
21*84943d6fSEmmanuel Vadot	compatible = "mediatek,mt8395-evk", "mediatek,mt8395",
22*84943d6fSEmmanuel Vadot		     "mediatek,mt8195";
23*84943d6fSEmmanuel Vadot
24*84943d6fSEmmanuel Vadot	aliases {
25*84943d6fSEmmanuel Vadot		serial0 = &uart0;
26*84943d6fSEmmanuel Vadot		ethernet0 = &eth;
27*84943d6fSEmmanuel Vadot	};
28*84943d6fSEmmanuel Vadot
29*84943d6fSEmmanuel Vadot	chosen {
30*84943d6fSEmmanuel Vadot		stdout-path = "serial0:921600n8";
31*84943d6fSEmmanuel Vadot	};
32*84943d6fSEmmanuel Vadot
33*84943d6fSEmmanuel Vadot	firmware {
34*84943d6fSEmmanuel Vadot		optee {
35*84943d6fSEmmanuel Vadot			compatible = "linaro,optee-tz";
36*84943d6fSEmmanuel Vadot			method = "smc";
37*84943d6fSEmmanuel Vadot		};
38*84943d6fSEmmanuel Vadot	};
39*84943d6fSEmmanuel Vadot
40*84943d6fSEmmanuel Vadot	memory@40000000 {
41*84943d6fSEmmanuel Vadot		device_type = "memory";
42*84943d6fSEmmanuel Vadot		reg = <0 0x40000000 0x2 0x00000000>;
43*84943d6fSEmmanuel Vadot	};
44*84943d6fSEmmanuel Vadot
45*84943d6fSEmmanuel Vadot	reserved-memory {
46*84943d6fSEmmanuel Vadot		#address-cells = <2>;
47*84943d6fSEmmanuel Vadot		#size-cells = <2>;
48*84943d6fSEmmanuel Vadot		ranges;
49*84943d6fSEmmanuel Vadot
50*84943d6fSEmmanuel Vadot		/*
51*84943d6fSEmmanuel Vadot		 * 12 MiB reserved for OP-TEE (BL32)
52*84943d6fSEmmanuel Vadot		 * +-----------------------+ 0x43e0_0000
53*84943d6fSEmmanuel Vadot		 * |      SHMEM 2MiB       |
54*84943d6fSEmmanuel Vadot		 * +-----------------------+ 0x43c0_0000
55*84943d6fSEmmanuel Vadot		 * |        | TA_RAM  8MiB |
56*84943d6fSEmmanuel Vadot		 * + TZDRAM +--------------+ 0x4340_0000
57*84943d6fSEmmanuel Vadot		 * |        | TEE_RAM 2MiB |
58*84943d6fSEmmanuel Vadot		 * +-----------------------+ 0x4320_0000
59*84943d6fSEmmanuel Vadot		 */
60*84943d6fSEmmanuel Vadot		optee_reserved: optee@43200000 {
61*84943d6fSEmmanuel Vadot			no-map;
62*84943d6fSEmmanuel Vadot			reg = <0 0x43200000 0 0x00c00000>;
63*84943d6fSEmmanuel Vadot		};
64*84943d6fSEmmanuel Vadot
65*84943d6fSEmmanuel Vadot		scp_mem: memory@50000000 {
66*84943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
67*84943d6fSEmmanuel Vadot			reg = <0 0x50000000 0 0x2900000>;
68*84943d6fSEmmanuel Vadot			no-map;
69*84943d6fSEmmanuel Vadot		};
70*84943d6fSEmmanuel Vadot
71*84943d6fSEmmanuel Vadot		vpu_mem: memory@53000000 {
72*84943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
73*84943d6fSEmmanuel Vadot			reg = <0 0x53000000 0 0x1400000>; /* 20 MB */
74*84943d6fSEmmanuel Vadot		};
75*84943d6fSEmmanuel Vadot
76*84943d6fSEmmanuel Vadot		/* 2 MiB reserved for ARM Trusted Firmware (BL31) */
77*84943d6fSEmmanuel Vadot		bl31_secmon_mem: memory@54600000 {
78*84943d6fSEmmanuel Vadot			no-map;
79*84943d6fSEmmanuel Vadot			reg = <0 0x54600000 0x0 0x200000>;
80*84943d6fSEmmanuel Vadot		};
81*84943d6fSEmmanuel Vadot
82*84943d6fSEmmanuel Vadot		snd_dma_mem: memory@60000000 {
83*84943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
84*84943d6fSEmmanuel Vadot			reg = <0 0x60000000 0 0x1100000>;
85*84943d6fSEmmanuel Vadot			no-map;
86*84943d6fSEmmanuel Vadot		};
87*84943d6fSEmmanuel Vadot
88*84943d6fSEmmanuel Vadot		apu_mem: memory@62000000 {
89*84943d6fSEmmanuel Vadot			compatible = "shared-dma-pool";
90*84943d6fSEmmanuel Vadot			reg = <0 0x62000000 0 0x1400000>; /* 20 MB */
91*84943d6fSEmmanuel Vadot		};
92*84943d6fSEmmanuel Vadot	};
93*84943d6fSEmmanuel Vadot
94*84943d6fSEmmanuel Vadot	backlight_lcd0: backlight-lcd0 {
95*84943d6fSEmmanuel Vadot		compatible = "pwm-backlight";
96*84943d6fSEmmanuel Vadot		pwms = <&disp_pwm0 0 500000>;
97*84943d6fSEmmanuel Vadot		enable-gpios = <&pio 47 GPIO_ACTIVE_HIGH>;
98*84943d6fSEmmanuel Vadot		brightness-levels = <0 1023>;
99*84943d6fSEmmanuel Vadot		num-interpolated-steps = <1023>;
100*84943d6fSEmmanuel Vadot		default-brightness-level = <576>;
101*84943d6fSEmmanuel Vadot	};
102*84943d6fSEmmanuel Vadot
103*84943d6fSEmmanuel Vadot	backlight_lcd1: backlight-lcd1 {
104*84943d6fSEmmanuel Vadot		compatible = "pwm-backlight";
105*84943d6fSEmmanuel Vadot		pwms = <&disp_pwm1 0 500000>;
106*84943d6fSEmmanuel Vadot		enable-gpios = <&pio 46 GPIO_ACTIVE_HIGH>;
107*84943d6fSEmmanuel Vadot		brightness-levels = <0 1023>;
108*84943d6fSEmmanuel Vadot		num-interpolated-steps = <1023>;
109*84943d6fSEmmanuel Vadot		default-brightness-level = <576>;
110*84943d6fSEmmanuel Vadot	};
111*84943d6fSEmmanuel Vadot
112*84943d6fSEmmanuel Vadot	can_clk: can-clk {
113*84943d6fSEmmanuel Vadot		compatible = "fixed-clock";
114*84943d6fSEmmanuel Vadot		#clock-cells = <0>;
115*84943d6fSEmmanuel Vadot		clock-frequency = <20000000>;
116*84943d6fSEmmanuel Vadot		clock-output-names = "can-clk";
117*84943d6fSEmmanuel Vadot	};
118*84943d6fSEmmanuel Vadot
119*84943d6fSEmmanuel Vadot	edp_panel_fixed_3v3: regulator-0 {
120*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
121*84943d6fSEmmanuel Vadot		regulator-name = "edp_panel_3v3";
122*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
123*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
124*84943d6fSEmmanuel Vadot		enable-active-high;
125*84943d6fSEmmanuel Vadot		gpio = <&pio 6 GPIO_ACTIVE_HIGH>;
126*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
127*84943d6fSEmmanuel Vadot		pinctrl-0 = <&edp_panel_3v3_en_pins>;
128*84943d6fSEmmanuel Vadot	};
129*84943d6fSEmmanuel Vadot
130*84943d6fSEmmanuel Vadot	edp_panel_fixed_12v: regulator-1 {
131*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
132*84943d6fSEmmanuel Vadot		regulator-name = "edp_backlight_12v";
133*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
134*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
135*84943d6fSEmmanuel Vadot		enable-active-high;
136*84943d6fSEmmanuel Vadot		gpio = <&pio 96 GPIO_ACTIVE_HIGH>;
137*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
138*84943d6fSEmmanuel Vadot		pinctrl-0 = <&edp_panel_12v_en_pins>;
139*84943d6fSEmmanuel Vadot	};
140*84943d6fSEmmanuel Vadot
141*84943d6fSEmmanuel Vadot	keys: gpio-keys {
142*84943d6fSEmmanuel Vadot		compatible = "gpio-keys";
143*84943d6fSEmmanuel Vadot
144*84943d6fSEmmanuel Vadot		button-volume-up {
145*84943d6fSEmmanuel Vadot			wakeup-source;
146*84943d6fSEmmanuel Vadot			debounce-interval = <100>;
147*84943d6fSEmmanuel Vadot			gpios = <&pio 106 GPIO_ACTIVE_LOW>;
148*84943d6fSEmmanuel Vadot			label = "volume_up";
149*84943d6fSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
150*84943d6fSEmmanuel Vadot		};
151*84943d6fSEmmanuel Vadot	};
152*84943d6fSEmmanuel Vadot
153*84943d6fSEmmanuel Vadot	wifi_fixed_3v3: regulator-2 {
154*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
155*84943d6fSEmmanuel Vadot		regulator-name = "wifi_3v3";
156*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
157*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
158*84943d6fSEmmanuel Vadot		gpio = <&pio 135 GPIO_ACTIVE_HIGH>;
159*84943d6fSEmmanuel Vadot		enable-active-high;
160*84943d6fSEmmanuel Vadot		regulator-always-on;
161*84943d6fSEmmanuel Vadot	};
162*84943d6fSEmmanuel Vadot};
163*84943d6fSEmmanuel Vadot
164*84943d6fSEmmanuel Vadot&disp_pwm0 {
165*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
166*84943d6fSEmmanuel Vadot	pinctrl-0 = <&pwm0_default_pins>;
167*84943d6fSEmmanuel Vadot	status = "okay";
168*84943d6fSEmmanuel Vadot};
169*84943d6fSEmmanuel Vadot
170*84943d6fSEmmanuel Vadot&dmic_codec {
171*84943d6fSEmmanuel Vadot	wakeup-delay-ms = <200>;
172*84943d6fSEmmanuel Vadot};
173*84943d6fSEmmanuel Vadot
174*84943d6fSEmmanuel Vadot&eth {
175*84943d6fSEmmanuel Vadot	phy-mode ="rgmii-rxid";
176*84943d6fSEmmanuel Vadot	phy-handle = <&eth_phy0>;
177*84943d6fSEmmanuel Vadot	snps,reset-gpio = <&pio 93 GPIO_ACTIVE_HIGH>;
178*84943d6fSEmmanuel Vadot	snps,reset-delays-us = <0 10000 10000>;
179*84943d6fSEmmanuel Vadot	mediatek,tx-delay-ps = <2030>;
180*84943d6fSEmmanuel Vadot	mediatek,mac-wol;
181*84943d6fSEmmanuel Vadot	pinctrl-names = "default", "sleep";
182*84943d6fSEmmanuel Vadot	pinctrl-0 = <&eth_default_pins>;
183*84943d6fSEmmanuel Vadot	pinctrl-1 = <&eth_sleep_pins>;
184*84943d6fSEmmanuel Vadot	status = "okay";
185*84943d6fSEmmanuel Vadot
186*84943d6fSEmmanuel Vadot	mdio {
187*84943d6fSEmmanuel Vadot		compatible = "snps,dwmac-mdio";
188*84943d6fSEmmanuel Vadot		#address-cells = <1>;
189*84943d6fSEmmanuel Vadot		#size-cells = <0>;
190*84943d6fSEmmanuel Vadot		eth_phy0: eth-phy0@1 {
191*84943d6fSEmmanuel Vadot			compatible = "ethernet-phy-id001c.c916";
192*84943d6fSEmmanuel Vadot			reg = <0x1>;
193*84943d6fSEmmanuel Vadot		};
194*84943d6fSEmmanuel Vadot	};
195*84943d6fSEmmanuel Vadot};
196*84943d6fSEmmanuel Vadot
197*84943d6fSEmmanuel Vadot&i2c0 {
198*84943d6fSEmmanuel Vadot	clock-frequency = <400000>;
199*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c0_pins>;
200*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
201*84943d6fSEmmanuel Vadot	status = "okay";
202*84943d6fSEmmanuel Vadot};
203*84943d6fSEmmanuel Vadot
204*84943d6fSEmmanuel Vadot&i2c1 {
205*84943d6fSEmmanuel Vadot	clock-frequency = <400000>;
206*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c1_pins>;
207*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
208*84943d6fSEmmanuel Vadot	status = "okay";
209*84943d6fSEmmanuel Vadot
210*84943d6fSEmmanuel Vadot	touchscreen@5d {
211*84943d6fSEmmanuel Vadot		compatible = "goodix,gt9271";
212*84943d6fSEmmanuel Vadot		reg = <0x5d>;
213*84943d6fSEmmanuel Vadot		interrupt-parent = <&pio>;
214*84943d6fSEmmanuel Vadot		interrupts = <132 IRQ_TYPE_EDGE_RISING>;
215*84943d6fSEmmanuel Vadot		irq-gpios = <&pio 132 GPIO_ACTIVE_HIGH>;
216*84943d6fSEmmanuel Vadot		reset-gpios = <&pio 133 GPIO_ACTIVE_HIGH>;
217*84943d6fSEmmanuel Vadot		AVDD28-supply = <&mt6360_ldo1>;
218*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
219*84943d6fSEmmanuel Vadot		pinctrl-0 = <&touch_pins>;
220*84943d6fSEmmanuel Vadot	};
221*84943d6fSEmmanuel Vadot};
222*84943d6fSEmmanuel Vadot
223*84943d6fSEmmanuel Vadot&i2c2 {
224*84943d6fSEmmanuel Vadot	clock-frequency = <400000>;
225*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins>;
226*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
227*84943d6fSEmmanuel Vadot	status = "okay";
228*84943d6fSEmmanuel Vadot};
229*84943d6fSEmmanuel Vadot
230*84943d6fSEmmanuel Vadot&i2c6 {
231*84943d6fSEmmanuel Vadot	clock-frequency = <400000>;
232*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c6_pins>;
233*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
234*84943d6fSEmmanuel Vadot	#address-cells = <1>;
235*84943d6fSEmmanuel Vadot	#size-cells = <0>;
236*84943d6fSEmmanuel Vadot	status = "okay";
237*84943d6fSEmmanuel Vadot
238*84943d6fSEmmanuel Vadot	mt6360: pmic@34 {
239*84943d6fSEmmanuel Vadot		compatible = "mediatek,mt6360";
240*84943d6fSEmmanuel Vadot		reg = <0x34>;
241*84943d6fSEmmanuel Vadot		interrupt-parent = <&pio>;
242*84943d6fSEmmanuel Vadot		interrupts = <128 IRQ_TYPE_EDGE_FALLING>;
243*84943d6fSEmmanuel Vadot		interrupt-names = "IRQB";
244*84943d6fSEmmanuel Vadot		interrupt-controller;
245*84943d6fSEmmanuel Vadot		#interrupt-cells = <1>;
246*84943d6fSEmmanuel Vadot		pinctrl-0 = <&mt6360_pins>;
247*84943d6fSEmmanuel Vadot
248*84943d6fSEmmanuel Vadot		charger {
249*84943d6fSEmmanuel Vadot			compatible = "mediatek,mt6360-chg";
250*84943d6fSEmmanuel Vadot			richtek,vinovp-microvolt = <14500000>;
251*84943d6fSEmmanuel Vadot
252*84943d6fSEmmanuel Vadot			otg_vbus_regulator: usb-otg-vbus-regulator {
253*84943d6fSEmmanuel Vadot				regulator-name = "usb-otg-vbus";
254*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <4425000>;
255*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <5825000>;
256*84943d6fSEmmanuel Vadot			};
257*84943d6fSEmmanuel Vadot		};
258*84943d6fSEmmanuel Vadot
259*84943d6fSEmmanuel Vadot		regulator {
260*84943d6fSEmmanuel Vadot			compatible = "mediatek,mt6360-regulator";
261*84943d6fSEmmanuel Vadot			LDO_VIN3-supply = <&mt6360_buck2>;
262*84943d6fSEmmanuel Vadot
263*84943d6fSEmmanuel Vadot			mt6360_buck1: buck1 {
264*84943d6fSEmmanuel Vadot				regulator-name = "emi_vdd2";
265*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
266*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
267*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
268*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP
269*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_ULP>;
270*84943d6fSEmmanuel Vadot				regulator-always-on;
271*84943d6fSEmmanuel Vadot			};
272*84943d6fSEmmanuel Vadot
273*84943d6fSEmmanuel Vadot			mt6360_buck2: buck2 {
274*84943d6fSEmmanuel Vadot				regulator-name = "emi_vddq";
275*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
276*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
277*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
278*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP
279*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_ULP>;
280*84943d6fSEmmanuel Vadot				regulator-always-on;
281*84943d6fSEmmanuel Vadot			};
282*84943d6fSEmmanuel Vadot
283*84943d6fSEmmanuel Vadot			mt6360_ldo1: ldo1 {
284*84943d6fSEmmanuel Vadot				regulator-name = "tp1_p3v0";
285*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
286*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
287*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
288*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
289*84943d6fSEmmanuel Vadot				regulator-always-on;
290*84943d6fSEmmanuel Vadot			};
291*84943d6fSEmmanuel Vadot
292*84943d6fSEmmanuel Vadot			mt6360_ldo2: ldo2 {
293*84943d6fSEmmanuel Vadot				regulator-name = "panel1_p1v8";
294*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
295*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
296*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
297*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
298*84943d6fSEmmanuel Vadot			};
299*84943d6fSEmmanuel Vadot
300*84943d6fSEmmanuel Vadot			mt6360_ldo3: ldo3 {
301*84943d6fSEmmanuel Vadot				regulator-name = "vmc_pmu";
302*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
303*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
304*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
305*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
306*84943d6fSEmmanuel Vadot			};
307*84943d6fSEmmanuel Vadot
308*84943d6fSEmmanuel Vadot			mt6360_ldo5: ldo5 {
309*84943d6fSEmmanuel Vadot				regulator-name = "vmch_pmu";
310*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <2700000>;
311*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
312*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
313*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
314*84943d6fSEmmanuel Vadot			};
315*84943d6fSEmmanuel Vadot
316*84943d6fSEmmanuel Vadot			/* This is a measure point, which name is mt6360_ldo1 on schematic */
317*84943d6fSEmmanuel Vadot			mt6360_ldo6: ldo6 {
318*84943d6fSEmmanuel Vadot				regulator-name = "mt6360_ldo1";
319*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <500000>;
320*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <2100000>;
321*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
322*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
323*84943d6fSEmmanuel Vadot			};
324*84943d6fSEmmanuel Vadot
325*84943d6fSEmmanuel Vadot			mt6360_ldo7: ldo7 {
326*84943d6fSEmmanuel Vadot				regulator-name = "emi_vmddr_en";
327*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <500000>;
328*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <2100000>;
329*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
330*84943d6fSEmmanuel Vadot							   MT6360_OPMODE_LP>;
331*84943d6fSEmmanuel Vadot				regulator-always-on;
332*84943d6fSEmmanuel Vadot			};
333*84943d6fSEmmanuel Vadot		};
334*84943d6fSEmmanuel Vadot	};
335*84943d6fSEmmanuel Vadot};
336*84943d6fSEmmanuel Vadot
337*84943d6fSEmmanuel Vadot&mfg0 {
338*84943d6fSEmmanuel Vadot	domain-supply = <&mt6315_7_vbuck1>;
339*84943d6fSEmmanuel Vadot};
340*84943d6fSEmmanuel Vadot
341*84943d6fSEmmanuel Vadot&mmc0 {
342*84943d6fSEmmanuel Vadot	status = "okay";
343*84943d6fSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
344*84943d6fSEmmanuel Vadot	pinctrl-0 = <&mmc0_default_pins>;
345*84943d6fSEmmanuel Vadot	pinctrl-1 = <&mmc0_uhs_pins>;
346*84943d6fSEmmanuel Vadot	bus-width = <8>;
347*84943d6fSEmmanuel Vadot	max-frequency = <200000000>;
348*84943d6fSEmmanuel Vadot	cap-mmc-highspeed;
349*84943d6fSEmmanuel Vadot	mmc-hs200-1_8v;
350*84943d6fSEmmanuel Vadot	mmc-hs400-1_8v;
351*84943d6fSEmmanuel Vadot	cap-mmc-hw-reset;
352*84943d6fSEmmanuel Vadot	no-sdio;
353*84943d6fSEmmanuel Vadot	no-sd;
354*84943d6fSEmmanuel Vadot	hs400-ds-delay = <0x14c11>;
355*84943d6fSEmmanuel Vadot	vmmc-supply = <&mt6359_vemc_1_ldo_reg>;
356*84943d6fSEmmanuel Vadot	vqmmc-supply = <&mt6359_vufs_ldo_reg>;
357*84943d6fSEmmanuel Vadot	non-removable;
358*84943d6fSEmmanuel Vadot};
359*84943d6fSEmmanuel Vadot
360*84943d6fSEmmanuel Vadot&mmc1 {
361*84943d6fSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
362*84943d6fSEmmanuel Vadot	pinctrl-0 = <&mmc1_default_pins>;
363*84943d6fSEmmanuel Vadot	pinctrl-1 = <&mmc1_uhs_pins>;
364*84943d6fSEmmanuel Vadot	bus-width = <4>;
365*84943d6fSEmmanuel Vadot	max-frequency = <200000000>;
366*84943d6fSEmmanuel Vadot	cap-sd-highspeed;
367*84943d6fSEmmanuel Vadot	sd-uhs-sdr50;
368*84943d6fSEmmanuel Vadot	sd-uhs-sdr104;
369*84943d6fSEmmanuel Vadot	no-mmc;
370*84943d6fSEmmanuel Vadot	no-sdio;
371*84943d6fSEmmanuel Vadot	vmmc-supply = <&mt6360_ldo5>;
372*84943d6fSEmmanuel Vadot	vqmmc-supply = <&mt6360_ldo3>;
373*84943d6fSEmmanuel Vadot	status = "okay";
374*84943d6fSEmmanuel Vadot	non-removable;
375*84943d6fSEmmanuel Vadot};
376*84943d6fSEmmanuel Vadot
377*84943d6fSEmmanuel Vadot&mt6359_vaud18_ldo_reg {
378*84943d6fSEmmanuel Vadot	regulator-always-on;
379*84943d6fSEmmanuel Vadot};
380*84943d6fSEmmanuel Vadot
381*84943d6fSEmmanuel Vadot&mt6359_vbbck_ldo_reg {
382*84943d6fSEmmanuel Vadot	regulator-always-on;
383*84943d6fSEmmanuel Vadot};
384*84943d6fSEmmanuel Vadot
385*84943d6fSEmmanuel Vadot/* For USB Hub */
386*84943d6fSEmmanuel Vadot&mt6359_vcamio_ldo_reg {
387*84943d6fSEmmanuel Vadot	regulator-always-on;
388*84943d6fSEmmanuel Vadot};
389*84943d6fSEmmanuel Vadot
390*84943d6fSEmmanuel Vadot&mt6359_vcn33_2_bt_ldo_reg {
391*84943d6fSEmmanuel Vadot	regulator-min-microvolt = <3300000>;
392*84943d6fSEmmanuel Vadot	regulator-max-microvolt = <3300000>;
393*84943d6fSEmmanuel Vadot};
394*84943d6fSEmmanuel Vadot
395*84943d6fSEmmanuel Vadot&mt6359_vcore_buck_reg {
396*84943d6fSEmmanuel Vadot	regulator-always-on;
397*84943d6fSEmmanuel Vadot};
398*84943d6fSEmmanuel Vadot
399*84943d6fSEmmanuel Vadot&mt6359_vgpu11_buck_reg {
400*84943d6fSEmmanuel Vadot	regulator-always-on;
401*84943d6fSEmmanuel Vadot};
402*84943d6fSEmmanuel Vadot
403*84943d6fSEmmanuel Vadot&mt6359_vpu_buck_reg {
404*84943d6fSEmmanuel Vadot	regulator-always-on;
405*84943d6fSEmmanuel Vadot};
406*84943d6fSEmmanuel Vadot
407*84943d6fSEmmanuel Vadot&mt6359_vrf12_ldo_reg {
408*84943d6fSEmmanuel Vadot	regulator-always-on;
409*84943d6fSEmmanuel Vadot};
410*84943d6fSEmmanuel Vadot
411*84943d6fSEmmanuel Vadot&mt6359codec {
412*84943d6fSEmmanuel Vadot	mediatek,mic-type-0 = <1>; /* ACC */
413*84943d6fSEmmanuel Vadot	mediatek,mic-type-1 = <3>; /* DCC */
414*84943d6fSEmmanuel Vadot	mediatek,mic-type-2 = <1>; /* ACC */
415*84943d6fSEmmanuel Vadot};
416*84943d6fSEmmanuel Vadot
417*84943d6fSEmmanuel Vadot&pcie0 {
418*84943d6fSEmmanuel Vadot	pinctrl-names = "default", "idle";
419*84943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie0_default_pins>;
420*84943d6fSEmmanuel Vadot	pinctrl-1 = <&pcie0_idle_pins>;
421*84943d6fSEmmanuel Vadot	status = "okay";
422*84943d6fSEmmanuel Vadot};
423*84943d6fSEmmanuel Vadot
424*84943d6fSEmmanuel Vadot&pcie1 {
425*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
426*84943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie1_default_pins>;
427*84943d6fSEmmanuel Vadot	status = "disabled";
428*84943d6fSEmmanuel Vadot};
429*84943d6fSEmmanuel Vadot
430*84943d6fSEmmanuel Vadot&pciephy {
431*84943d6fSEmmanuel Vadot	status = "okay";
432*84943d6fSEmmanuel Vadot};
433*84943d6fSEmmanuel Vadot
434*84943d6fSEmmanuel Vadot&pio {
435*84943d6fSEmmanuel Vadot	audio_default_pins: audio-default-pins {
436*84943d6fSEmmanuel Vadot		pins-cmd-dat {
437*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO61__FUNC_DMIC1_CLK>,
438*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO62__FUNC_DMIC1_DAT>,
439*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO65__FUNC_PCM_DO>,
440*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO66__FUNC_PCM_CLK>,
441*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO67__FUNC_PCM_DI>,
442*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO68__FUNC_PCM_SYNC>,
443*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO69__FUNC_AUD_CLK_MOSI>,
444*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO70__FUNC_AUD_SYNC_MOSI>,
445*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO71__FUNC_AUD_DAT_MOSI0>,
446*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO72__FUNC_AUD_DAT_MOSI1>,
447*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO73__FUNC_AUD_DAT_MISO0>,
448*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO74__FUNC_AUD_DAT_MISO1>,
449*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO75__FUNC_AUD_DAT_MISO2>;
450*84943d6fSEmmanuel Vadot		};
451*84943d6fSEmmanuel Vadot	};
452*84943d6fSEmmanuel Vadot
453*84943d6fSEmmanuel Vadot	disp_pwm1_default_pins: disp-pwm1-default-pins {
454*84943d6fSEmmanuel Vadot		pins1 {
455*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO104__FUNC_DISP_PWM1>;
456*84943d6fSEmmanuel Vadot		};
457*84943d6fSEmmanuel Vadot	};
458*84943d6fSEmmanuel Vadot
459*84943d6fSEmmanuel Vadot	edp_panel_12v_en_pins: edp-panel-12v-en-pins {
460*84943d6fSEmmanuel Vadot		pins1 {
461*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO96__FUNC_GPIO96>;
462*84943d6fSEmmanuel Vadot			output-high;
463*84943d6fSEmmanuel Vadot		};
464*84943d6fSEmmanuel Vadot	};
465*84943d6fSEmmanuel Vadot
466*84943d6fSEmmanuel Vadot	edp_panel_3v3_en_pins: edp-panel-3v3-en-pins {
467*84943d6fSEmmanuel Vadot		pins1 {
468*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO6__FUNC_GPIO6>;
469*84943d6fSEmmanuel Vadot			output-high;
470*84943d6fSEmmanuel Vadot		};
471*84943d6fSEmmanuel Vadot	};
472*84943d6fSEmmanuel Vadot
473*84943d6fSEmmanuel Vadot	eth_default_pins: eth-default-pins {
474*84943d6fSEmmanuel Vadot		pins-cc {
475*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO85__FUNC_GBE_TXC>,
476*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO86__FUNC_GBE_RXC>,
477*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO87__FUNC_GBE_RXDV>,
478*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO88__FUNC_GBE_TXEN>;
479*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
480*84943d6fSEmmanuel Vadot		};
481*84943d6fSEmmanuel Vadot
482*84943d6fSEmmanuel Vadot		pins-mdio {
483*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO89__FUNC_GBE_MDC>,
484*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO90__FUNC_GBE_MDIO>;
485*84943d6fSEmmanuel Vadot			input-enable;
486*84943d6fSEmmanuel Vadot		};
487*84943d6fSEmmanuel Vadot
488*84943d6fSEmmanuel Vadot		pins-power {
489*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO91__FUNC_GPIO91>,
490*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO92__FUNC_GPIO92>;
491*84943d6fSEmmanuel Vadot			output-high;
492*84943d6fSEmmanuel Vadot		};
493*84943d6fSEmmanuel Vadot
494*84943d6fSEmmanuel Vadot		pins-rxd {
495*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO81__FUNC_GBE_RXD3>,
496*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO82__FUNC_GBE_RXD2>,
497*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO83__FUNC_GBE_RXD1>,
498*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO84__FUNC_GBE_RXD0>;
499*84943d6fSEmmanuel Vadot		};
500*84943d6fSEmmanuel Vadot
501*84943d6fSEmmanuel Vadot		pins-txd {
502*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO77__FUNC_GBE_TXD3>,
503*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO78__FUNC_GBE_TXD2>,
504*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO79__FUNC_GBE_TXD1>,
505*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO80__FUNC_GBE_TXD0>;
506*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
507*84943d6fSEmmanuel Vadot		};
508*84943d6fSEmmanuel Vadot	};
509*84943d6fSEmmanuel Vadot
510*84943d6fSEmmanuel Vadot	eth_sleep_pins: eth-sleep-pins {
511*84943d6fSEmmanuel Vadot		pins-cc {
512*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO85__FUNC_GPIO85>,
513*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO86__FUNC_GPIO86>,
514*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO87__FUNC_GPIO87>,
515*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO88__FUNC_GPIO88>;
516*84943d6fSEmmanuel Vadot		};
517*84943d6fSEmmanuel Vadot
518*84943d6fSEmmanuel Vadot		pins-mdio {
519*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO89__FUNC_GPIO89>,
520*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO90__FUNC_GPIO90>;
521*84943d6fSEmmanuel Vadot			input-disable;
522*84943d6fSEmmanuel Vadot			bias-disable;
523*84943d6fSEmmanuel Vadot		};
524*84943d6fSEmmanuel Vadot
525*84943d6fSEmmanuel Vadot		pins-rxd {
526*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO81__FUNC_GPIO81>,
527*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO82__FUNC_GPIO82>,
528*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO83__FUNC_GPIO83>,
529*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO84__FUNC_GPIO84>;
530*84943d6fSEmmanuel Vadot		};
531*84943d6fSEmmanuel Vadot
532*84943d6fSEmmanuel Vadot		pins-txd {
533*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO77__FUNC_GPIO77>,
534*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO78__FUNC_GPIO78>,
535*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO79__FUNC_GPIO79>,
536*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO80__FUNC_GPIO80>;
537*84943d6fSEmmanuel Vadot		};
538*84943d6fSEmmanuel Vadot	};
539*84943d6fSEmmanuel Vadot
540*84943d6fSEmmanuel Vadot	gpio_key_pins: gpio-keys-pins {
541*84943d6fSEmmanuel Vadot		pins {
542*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO106__FUNC_GPIO106>;
543*84943d6fSEmmanuel Vadot			bias-pull-up;
544*84943d6fSEmmanuel Vadot			input-enable;
545*84943d6fSEmmanuel Vadot		};
546*84943d6fSEmmanuel Vadot	};
547*84943d6fSEmmanuel Vadot
548*84943d6fSEmmanuel Vadot	i2c0_pins: i2c0-pins {
549*84943d6fSEmmanuel Vadot		pins {
550*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO8__FUNC_SDA0>,
551*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO9__FUNC_SCL0>;
552*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
553*84943d6fSEmmanuel Vadot			drive-strength-microamp = <1000>;
554*84943d6fSEmmanuel Vadot		};
555*84943d6fSEmmanuel Vadot	};
556*84943d6fSEmmanuel Vadot
557*84943d6fSEmmanuel Vadot	i2c1_pins: i2c1-pins {
558*84943d6fSEmmanuel Vadot		pins {
559*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO10__FUNC_SDA1>,
560*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO11__FUNC_SCL1>;
561*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
562*84943d6fSEmmanuel Vadot			drive-strength-microamp = <1000>;
563*84943d6fSEmmanuel Vadot		};
564*84943d6fSEmmanuel Vadot	};
565*84943d6fSEmmanuel Vadot
566*84943d6fSEmmanuel Vadot	i2c2_pins: i2c2-pins {
567*84943d6fSEmmanuel Vadot		pins {
568*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO12__FUNC_SDA2>,
569*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO13__FUNC_SCL2>;
570*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
571*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
572*84943d6fSEmmanuel Vadot		};
573*84943d6fSEmmanuel Vadot	};
574*84943d6fSEmmanuel Vadot
575*84943d6fSEmmanuel Vadot	i2c6_pins: i2c6-pins {
576*84943d6fSEmmanuel Vadot		pins {
577*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO25__FUNC_SDA6>,
578*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO26__FUNC_SCL6>;
579*84943d6fSEmmanuel Vadot			bias-pull-up;
580*84943d6fSEmmanuel Vadot		};
581*84943d6fSEmmanuel Vadot	};
582*84943d6fSEmmanuel Vadot
583*84943d6fSEmmanuel Vadot	mmc0_default_pins: mmc0-default-pins {
584*84943d6fSEmmanuel Vadot		pins-clk {
585*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
586*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
587*84943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
588*84943d6fSEmmanuel Vadot		};
589*84943d6fSEmmanuel Vadot
590*84943d6fSEmmanuel Vadot		pins-cmd-dat {
591*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
592*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
593*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
594*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
595*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
596*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
597*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
598*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
599*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
600*84943d6fSEmmanuel Vadot			input-enable;
601*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
602*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
603*84943d6fSEmmanuel Vadot		};
604*84943d6fSEmmanuel Vadot
605*84943d6fSEmmanuel Vadot		pins-rst {
606*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
607*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_6mA>;
608*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
609*84943d6fSEmmanuel Vadot		};
610*84943d6fSEmmanuel Vadot	};
611*84943d6fSEmmanuel Vadot
612*84943d6fSEmmanuel Vadot	mmc0_uhs_pins: mmc0-uhs-pins {
613*84943d6fSEmmanuel Vadot		pins-clk {
614*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
615*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
616*84943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
617*84943d6fSEmmanuel Vadot		};
618*84943d6fSEmmanuel Vadot
619*84943d6fSEmmanuel Vadot		pins-cmd-dat {
620*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
621*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
622*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
623*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
624*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
625*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
626*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
627*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
628*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
629*84943d6fSEmmanuel Vadot			input-enable;
630*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
631*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
632*84943d6fSEmmanuel Vadot		};
633*84943d6fSEmmanuel Vadot
634*84943d6fSEmmanuel Vadot		pins-ds {
635*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO127__FUNC_MSDC0_DSL>;
636*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
637*84943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
638*84943d6fSEmmanuel Vadot		};
639*84943d6fSEmmanuel Vadot
640*84943d6fSEmmanuel Vadot		pins-rst {
641*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
642*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
643*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
644*84943d6fSEmmanuel Vadot		};
645*84943d6fSEmmanuel Vadot	};
646*84943d6fSEmmanuel Vadot
647*84943d6fSEmmanuel Vadot	mmc1_default_pins: mmc1-default-pins {
648*84943d6fSEmmanuel Vadot		pins-clk {
649*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
650*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
651*84943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
652*84943d6fSEmmanuel Vadot		};
653*84943d6fSEmmanuel Vadot
654*84943d6fSEmmanuel Vadot		pins-cmd-dat {
655*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
656*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
657*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
658*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
659*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
660*84943d6fSEmmanuel Vadot			input-enable;
661*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
662*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
663*84943d6fSEmmanuel Vadot		};
664*84943d6fSEmmanuel Vadot	};
665*84943d6fSEmmanuel Vadot
666*84943d6fSEmmanuel Vadot	mmc1_uhs_pins: mmc1-uhs-pins {
667*84943d6fSEmmanuel Vadot		pins-clk {
668*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
669*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
670*84943d6fSEmmanuel Vadot			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
671*84943d6fSEmmanuel Vadot		};
672*84943d6fSEmmanuel Vadot
673*84943d6fSEmmanuel Vadot		pins-cmd-dat {
674*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
675*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
676*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
677*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
678*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
679*84943d6fSEmmanuel Vadot			input-enable;
680*84943d6fSEmmanuel Vadot			drive-strength = <MTK_DRIVE_8mA>;
681*84943d6fSEmmanuel Vadot			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
682*84943d6fSEmmanuel Vadot		};
683*84943d6fSEmmanuel Vadot	};
684*84943d6fSEmmanuel Vadot
685*84943d6fSEmmanuel Vadot	mt6360_pins: mt6360-pins {
686*84943d6fSEmmanuel Vadot		pins {
687*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO17__FUNC_GPIO17>,
688*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO128__FUNC_GPIO128>;
689*84943d6fSEmmanuel Vadot			input-enable;
690*84943d6fSEmmanuel Vadot			bias-pull-up;
691*84943d6fSEmmanuel Vadot		};
692*84943d6fSEmmanuel Vadot	};
693*84943d6fSEmmanuel Vadot
694*84943d6fSEmmanuel Vadot	pcie0_default_pins: pcie0-default-pins {
695*84943d6fSEmmanuel Vadot		pins {
696*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO19__FUNC_WAKEN>,
697*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO20__FUNC_PERSTN>,
698*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO21__FUNC_CLKREQN>;
699*84943d6fSEmmanuel Vadot			bias-pull-up;
700*84943d6fSEmmanuel Vadot		};
701*84943d6fSEmmanuel Vadot	};
702*84943d6fSEmmanuel Vadot
703*84943d6fSEmmanuel Vadot	pcie0_idle_pins: pcie0-idle-pins {
704*84943d6fSEmmanuel Vadot		pins {
705*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO20__FUNC_GPIO20>;
706*84943d6fSEmmanuel Vadot			bias-disable;
707*84943d6fSEmmanuel Vadot			output-low;
708*84943d6fSEmmanuel Vadot		};
709*84943d6fSEmmanuel Vadot	};
710*84943d6fSEmmanuel Vadot
711*84943d6fSEmmanuel Vadot	pcie1_default_pins: pcie1-default-pins {
712*84943d6fSEmmanuel Vadot		pins {
713*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO22__FUNC_PERSTN_1>,
714*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO23__FUNC_CLKREQN_1>,
715*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO24__FUNC_WAKEN_1>;
716*84943d6fSEmmanuel Vadot			bias-pull-up;
717*84943d6fSEmmanuel Vadot		};
718*84943d6fSEmmanuel Vadot	};
719*84943d6fSEmmanuel Vadot
720*84943d6fSEmmanuel Vadot	pwm0_default_pins: pwm0-default-pins {
721*84943d6fSEmmanuel Vadot		pins-cmd-dat {
722*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO97__FUNC_DISP_PWM0>;
723*84943d6fSEmmanuel Vadot		};
724*84943d6fSEmmanuel Vadot	};
725*84943d6fSEmmanuel Vadot
726*84943d6fSEmmanuel Vadot	spi1_pins: spi1-pins {
727*84943d6fSEmmanuel Vadot		pins {
728*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO136__FUNC_SPIM1_CSB>,
729*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO137__FUNC_SPIM1_CLK>,
730*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO138__FUNC_SPIM1_MO>,
731*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO139__FUNC_SPIM1_MI>;
732*84943d6fSEmmanuel Vadot			bias-disable;
733*84943d6fSEmmanuel Vadot		};
734*84943d6fSEmmanuel Vadot	};
735*84943d6fSEmmanuel Vadot
736*84943d6fSEmmanuel Vadot	spi2_pins: spi-pins {
737*84943d6fSEmmanuel Vadot		pins {
738*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO140__FUNC_SPIM2_CSB>,
739*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO141__FUNC_SPIM2_CLK>,
740*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO142__FUNC_SPIM2_MO>,
741*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO143__FUNC_SPIM2_MI>;
742*84943d6fSEmmanuel Vadot			bias-disable;
743*84943d6fSEmmanuel Vadot		};
744*84943d6fSEmmanuel Vadot	};
745*84943d6fSEmmanuel Vadot
746*84943d6fSEmmanuel Vadot	touch_pins: touch-pins {
747*84943d6fSEmmanuel Vadot		pins-irq {
748*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO132__FUNC_GPIO132>;
749*84943d6fSEmmanuel Vadot			input-enable;
750*84943d6fSEmmanuel Vadot			bias-disable;
751*84943d6fSEmmanuel Vadot		};
752*84943d6fSEmmanuel Vadot
753*84943d6fSEmmanuel Vadot		pins-reset {
754*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO133__FUNC_GPIO133>;
755*84943d6fSEmmanuel Vadot			output-high;
756*84943d6fSEmmanuel Vadot		};
757*84943d6fSEmmanuel Vadot	};
758*84943d6fSEmmanuel Vadot
759*84943d6fSEmmanuel Vadot	uart0_pins: uart0-pins {
760*84943d6fSEmmanuel Vadot		pins {
761*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO98__FUNC_UTXD0>,
762*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO99__FUNC_URXD0>;
763*84943d6fSEmmanuel Vadot		};
764*84943d6fSEmmanuel Vadot	};
765*84943d6fSEmmanuel Vadot
766*84943d6fSEmmanuel Vadot	uart1_pins: uart1-pins {
767*84943d6fSEmmanuel Vadot		pins {
768*84943d6fSEmmanuel Vadot			pinmux = <PINMUX_GPIO100__FUNC_URTS1>,
769*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO101__FUNC_UCTS1>,
770*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO102__FUNC_UTXD1>,
771*84943d6fSEmmanuel Vadot				 <PINMUX_GPIO103__FUNC_URXD1>;
772*84943d6fSEmmanuel Vadot		};
773*84943d6fSEmmanuel Vadot	};
774*84943d6fSEmmanuel Vadot};
775*84943d6fSEmmanuel Vadot
776*84943d6fSEmmanuel Vadot&pmic {
777*84943d6fSEmmanuel Vadot	interrupt-parent = <&pio>;
778*84943d6fSEmmanuel Vadot	interrupts = <222 IRQ_TYPE_LEVEL_HIGH>;
779*84943d6fSEmmanuel Vadot};
780*84943d6fSEmmanuel Vadot
781*84943d6fSEmmanuel Vadot&scp {
782*84943d6fSEmmanuel Vadot	memory-region = <&scp_mem>;
783*84943d6fSEmmanuel Vadot	status = "okay";
784*84943d6fSEmmanuel Vadot};
785*84943d6fSEmmanuel Vadot
786*84943d6fSEmmanuel Vadot&spi1 {
787*84943d6fSEmmanuel Vadot	pinctrl-0 = <&spi1_pins>;
788*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
789*84943d6fSEmmanuel Vadot	mediatek,pad-select = <0>;
790*84943d6fSEmmanuel Vadot	#address-cells = <1>;
791*84943d6fSEmmanuel Vadot	#size-cells = <0>;
792*84943d6fSEmmanuel Vadot	status = "okay";
793*84943d6fSEmmanuel Vadot	cs-gpios = <&pio 64 GPIO_ACTIVE_LOW>;
794*84943d6fSEmmanuel Vadot
795*84943d6fSEmmanuel Vadot	can0: can@0 {
796*84943d6fSEmmanuel Vadot		compatible = "microchip,mcp2518fd";
797*84943d6fSEmmanuel Vadot		reg = <0>;
798*84943d6fSEmmanuel Vadot		clocks = <&can_clk>;
799*84943d6fSEmmanuel Vadot		spi-max-frequency = <20000000>;
800*84943d6fSEmmanuel Vadot		interrupts-extended = <&pio 16 IRQ_TYPE_LEVEL_LOW>;
801*84943d6fSEmmanuel Vadot		vdd-supply = <&mt6359_vcn33_2_bt_ldo_reg>;
802*84943d6fSEmmanuel Vadot		xceiver-supply = <&mt6359_vcn33_2_bt_ldo_reg>;
803*84943d6fSEmmanuel Vadot	};
804*84943d6fSEmmanuel Vadot};
805*84943d6fSEmmanuel Vadot
806*84943d6fSEmmanuel Vadot&spi2 {
807*84943d6fSEmmanuel Vadot	pinctrl-0 = <&spi2_pins>;
808*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
809*84943d6fSEmmanuel Vadot	mediatek,pad-select = <0>;
810*84943d6fSEmmanuel Vadot	#address-cells = <1>;
811*84943d6fSEmmanuel Vadot	#size-cells = <0>;
812*84943d6fSEmmanuel Vadot	status = "okay";
813*84943d6fSEmmanuel Vadot};
814*84943d6fSEmmanuel Vadot
815*84943d6fSEmmanuel Vadot&spmi {
816*84943d6fSEmmanuel Vadot	#address-cells = <2>;
817*84943d6fSEmmanuel Vadot	#size-cells = <0>;
818*84943d6fSEmmanuel Vadot
819*84943d6fSEmmanuel Vadot	mt6315_6: pmic@6 {
820*84943d6fSEmmanuel Vadot		compatible = "mediatek,mt6315-regulator";
821*84943d6fSEmmanuel Vadot		reg = <0x6 SPMI_USID>;
822*84943d6fSEmmanuel Vadot
823*84943d6fSEmmanuel Vadot		regulators {
824*84943d6fSEmmanuel Vadot			mt6315_6_vbuck1: vbuck1 {
825*84943d6fSEmmanuel Vadot				regulator-compatible = "vbuck1";
826*84943d6fSEmmanuel Vadot				regulator-name = "Vbcpu";
827*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
828*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1193750>;
829*84943d6fSEmmanuel Vadot				regulator-enable-ramp-delay = <256>;
830*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <0 1 2>;
831*84943d6fSEmmanuel Vadot				regulator-always-on;
832*84943d6fSEmmanuel Vadot			};
833*84943d6fSEmmanuel Vadot		};
834*84943d6fSEmmanuel Vadot	};
835*84943d6fSEmmanuel Vadot
836*84943d6fSEmmanuel Vadot	mt6315_7: pmic@7 {
837*84943d6fSEmmanuel Vadot		compatible = "mediatek,mt6315-regulator";
838*84943d6fSEmmanuel Vadot		reg = <0x7 SPMI_USID>;
839*84943d6fSEmmanuel Vadot
840*84943d6fSEmmanuel Vadot		regulators {
841*84943d6fSEmmanuel Vadot			mt6315_7_vbuck1: vbuck1 {
842*84943d6fSEmmanuel Vadot				regulator-compatible = "vbuck1";
843*84943d6fSEmmanuel Vadot				regulator-name = "Vgpu";
844*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
845*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1193750>;
846*84943d6fSEmmanuel Vadot				regulator-enable-ramp-delay = <256>;
847*84943d6fSEmmanuel Vadot				regulator-allowed-modes = <0 1 2>;
848*84943d6fSEmmanuel Vadot			};
849*84943d6fSEmmanuel Vadot		};
850*84943d6fSEmmanuel Vadot	};
851*84943d6fSEmmanuel Vadot};
852*84943d6fSEmmanuel Vadot
853*84943d6fSEmmanuel Vadot&u3phy0 {
854*84943d6fSEmmanuel Vadot	status = "okay";
855*84943d6fSEmmanuel Vadot};
856*84943d6fSEmmanuel Vadot
857*84943d6fSEmmanuel Vadot&u3phy1 {
858*84943d6fSEmmanuel Vadot	status = "okay";
859*84943d6fSEmmanuel Vadot};
860*84943d6fSEmmanuel Vadot
861*84943d6fSEmmanuel Vadot&u3phy2 {
862*84943d6fSEmmanuel Vadot	status = "okay";
863*84943d6fSEmmanuel Vadot};
864*84943d6fSEmmanuel Vadot
865*84943d6fSEmmanuel Vadot&u3phy3 {
866*84943d6fSEmmanuel Vadot	status = "okay";
867*84943d6fSEmmanuel Vadot};
868*84943d6fSEmmanuel Vadot
869*84943d6fSEmmanuel Vadot&uart0 {
870*84943d6fSEmmanuel Vadot	pinctrl-0 = <&uart0_pins>;
871*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
872*84943d6fSEmmanuel Vadot	status = "okay";
873*84943d6fSEmmanuel Vadot};
874*84943d6fSEmmanuel Vadot
875*84943d6fSEmmanuel Vadot&uart1 {
876*84943d6fSEmmanuel Vadot	pinctrl-0 = <&uart1_pins>;
877*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
878*84943d6fSEmmanuel Vadot	status = "okay";
879*84943d6fSEmmanuel Vadot};
880*84943d6fSEmmanuel Vadot
881*84943d6fSEmmanuel Vadot&ufsphy {
882*84943d6fSEmmanuel Vadot	status = "disabled";
883*84943d6fSEmmanuel Vadot};
884*84943d6fSEmmanuel Vadot
885*84943d6fSEmmanuel Vadot&xhci0 {
886*84943d6fSEmmanuel Vadot	status = "okay";
887*84943d6fSEmmanuel Vadot};
888*84943d6fSEmmanuel Vadot
889*84943d6fSEmmanuel Vadot&xhci1 {
890*84943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
891*84943d6fSEmmanuel Vadot	status = "okay";
892*84943d6fSEmmanuel Vadot};
893*84943d6fSEmmanuel Vadot
894*84943d6fSEmmanuel Vadot&xhci2 {
895*84943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
896*84943d6fSEmmanuel Vadot	status = "okay";
897*84943d6fSEmmanuel Vadot};
898*84943d6fSEmmanuel Vadot
899*84943d6fSEmmanuel Vadot&xhci3 {
900*84943d6fSEmmanuel Vadot	vusb33-supply = <&mt6359_vusb_ldo_reg>;
901*84943d6fSEmmanuel Vadot	status = "okay";
902*84943d6fSEmmanuel Vadot};
903