1689b937bSHsin-Yi Wang// SPDX-License-Identifier: GPL-2.0-only
2689b937bSHsin-Yi Wang/*
3689b937bSHsin-Yi Wang * Copyright 2016 MediaTek Inc.
4689b937bSHsin-Yi Wang */
5689b937bSHsin-Yi Wang
6689b937bSHsin-Yi Wang#include <dt-bindings/input/input.h>
7689b937bSHsin-Yi Wang#include <dt-bindings/input/linux-event-codes.h>
89d955478SDafna Hirschfeld#include <dt-bindings/regulator/dlg,da9211-regulator.h>
9689b937bSHsin-Yi Wang#include <dt-bindings/gpio/gpio.h>
10689b937bSHsin-Yi Wang#include "mt8173.dtsi"
11689b937bSHsin-Yi Wang
12689b937bSHsin-Yi Wang/ {
13*a5d68a87SHsin-Yi Wang	aliases {
14*a5d68a87SHsin-Yi Wang		mmc0 = &mmc0;
15*a5d68a87SHsin-Yi Wang		mmc1 = &mmc1;
16*a5d68a87SHsin-Yi Wang		mmc2 = &mmc3;
17*a5d68a87SHsin-Yi Wang	};
18*a5d68a87SHsin-Yi Wang
19689b937bSHsin-Yi Wang	memory@40000000 {
20689b937bSHsin-Yi Wang		device_type = "memory";
21689b937bSHsin-Yi Wang		reg = <0 0x40000000 0 0x80000000>;
22689b937bSHsin-Yi Wang	};
23689b937bSHsin-Yi Wang
24689b937bSHsin-Yi Wang	backlight: backlight {
25689b937bSHsin-Yi Wang		compatible = "pwm-backlight";
26689b937bSHsin-Yi Wang		pwms = <&pwm0 0 1000000>;
27689b937bSHsin-Yi Wang		power-supply = <&bl_fixed_reg>;
28689b937bSHsin-Yi Wang		enable-gpios = <&pio 95 GPIO_ACTIVE_HIGH>;
29689b937bSHsin-Yi Wang
30689b937bSHsin-Yi Wang		pinctrl-names = "default";
31689b937bSHsin-Yi Wang		pinctrl-0 = <&disp_pwm0_pins>;
32689b937bSHsin-Yi Wang		status = "okay";
33689b937bSHsin-Yi Wang	};
34689b937bSHsin-Yi Wang
35689b937bSHsin-Yi Wang	bl_fixed_reg: fixedregulator2 {
36689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
37689b937bSHsin-Yi Wang		regulator-name = "bl_fixed";
38689b937bSHsin-Yi Wang		regulator-min-microvolt = <1800000>;
39689b937bSHsin-Yi Wang		regulator-max-microvolt = <1800000>;
40689b937bSHsin-Yi Wang		startup-delay-us = <1000>;
41689b937bSHsin-Yi Wang		enable-active-high;
42689b937bSHsin-Yi Wang		gpio = <&pio 32 GPIO_ACTIVE_HIGH>;
43689b937bSHsin-Yi Wang		pinctrl-names = "default";
44689b937bSHsin-Yi Wang		pinctrl-0 = <&bl_fixed_pins>;
45689b937bSHsin-Yi Wang	};
46689b937bSHsin-Yi Wang
47689b937bSHsin-Yi Wang	chosen {
48689b937bSHsin-Yi Wang		stdout-path = "serial0:115200n8";
49689b937bSHsin-Yi Wang	};
50689b937bSHsin-Yi Wang
51689b937bSHsin-Yi Wang	gpio_keys: gpio-keys {
52689b937bSHsin-Yi Wang		compatible = "gpio-keys";
53689b937bSHsin-Yi Wang		pinctrl-names = "default";
54689b937bSHsin-Yi Wang		pinctrl-0 = <&gpio_keys_pins>;
55689b937bSHsin-Yi Wang
56689b937bSHsin-Yi Wang		lid {
57689b937bSHsin-Yi Wang			label = "Lid";
58689b937bSHsin-Yi Wang			gpios = <&pio 69 GPIO_ACTIVE_LOW>;
59689b937bSHsin-Yi Wang			linux,code = <SW_LID>;
60689b937bSHsin-Yi Wang			linux,input-type = <EV_SW>;
61689b937bSHsin-Yi Wang			gpio-key,wakeup;
62689b937bSHsin-Yi Wang		};
63689b937bSHsin-Yi Wang
64689b937bSHsin-Yi Wang		power {
65689b937bSHsin-Yi Wang			label = "Power";
66689b937bSHsin-Yi Wang			gpios = <&pio 14 GPIO_ACTIVE_HIGH>;
67689b937bSHsin-Yi Wang			linux,code = <KEY_POWER>;
68689b937bSHsin-Yi Wang			debounce-interval = <30>;
69689b937bSHsin-Yi Wang			gpio-key,wakeup;
70689b937bSHsin-Yi Wang		};
71689b937bSHsin-Yi Wang
72689b937bSHsin-Yi Wang		tablet_mode {
73689b937bSHsin-Yi Wang			label = "Tablet_mode";
74689b937bSHsin-Yi Wang			gpios = <&pio 121 GPIO_ACTIVE_HIGH>;
75689b937bSHsin-Yi Wang			linux,code = <SW_TABLET_MODE>;
76689b937bSHsin-Yi Wang			linux,input-type = <EV_SW>;
77689b937bSHsin-Yi Wang			gpio-key,wakeup;
78689b937bSHsin-Yi Wang		};
79689b937bSHsin-Yi Wang
80689b937bSHsin-Yi Wang		volume_down {
81689b937bSHsin-Yi Wang			label = "Volume_down";
82689b937bSHsin-Yi Wang			gpios = <&pio 123 GPIO_ACTIVE_LOW>;
83689b937bSHsin-Yi Wang			linux,code = <KEY_VOLUMEDOWN>;
84689b937bSHsin-Yi Wang		};
85689b937bSHsin-Yi Wang
86689b937bSHsin-Yi Wang		volume_up {
87689b937bSHsin-Yi Wang			label = "Volume_up";
88689b937bSHsin-Yi Wang			gpios = <&pio 124 GPIO_ACTIVE_LOW>;
89689b937bSHsin-Yi Wang			linux,code = <KEY_VOLUMEUP>;
90689b937bSHsin-Yi Wang		};
91689b937bSHsin-Yi Wang	};
92689b937bSHsin-Yi Wang
93689b937bSHsin-Yi Wang	panel: panel {
94689b937bSHsin-Yi Wang		compatible = "lg,lp120up1";
95689b937bSHsin-Yi Wang		power-supply = <&panel_fixed_3v3>;
96689b937bSHsin-Yi Wang		backlight = <&backlight>;
97689b937bSHsin-Yi Wang
98689b937bSHsin-Yi Wang		port {
99689b937bSHsin-Yi Wang			panel_in: endpoint {
100689b937bSHsin-Yi Wang				remote-endpoint = <&ps8640_out>;
101689b937bSHsin-Yi Wang			};
102689b937bSHsin-Yi Wang		};
103689b937bSHsin-Yi Wang	};
104689b937bSHsin-Yi Wang
105689b937bSHsin-Yi Wang	panel_fixed_3v3: regulator1 {
106689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
107689b937bSHsin-Yi Wang		regulator-name = "PANEL_3V3";
108689b937bSHsin-Yi Wang		regulator-min-microvolt = <3300000>;
109689b937bSHsin-Yi Wang		regulator-max-microvolt = <3300000>;
110689b937bSHsin-Yi Wang		enable-active-high;
111689b937bSHsin-Yi Wang		gpio = <&pio 41 GPIO_ACTIVE_HIGH>;
112689b937bSHsin-Yi Wang		pinctrl-names = "default";
113689b937bSHsin-Yi Wang		pinctrl-0 = <&panel_fixed_pins>;
114689b937bSHsin-Yi Wang	};
115689b937bSHsin-Yi Wang
116689b937bSHsin-Yi Wang	ps8640_fixed_1v2: regulator2 {
117689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
118689b937bSHsin-Yi Wang		regulator-name = "PS8640_1V2";
119689b937bSHsin-Yi Wang		regulator-min-microvolt = <1200000>;
120689b937bSHsin-Yi Wang		regulator-max-microvolt = <1200000>;
121689b937bSHsin-Yi Wang		regulator-enable-ramp-delay = <2000>;
122689b937bSHsin-Yi Wang		enable-active-high;
123689b937bSHsin-Yi Wang		regulator-boot-on;
124689b937bSHsin-Yi Wang		gpio = <&pio 30 GPIO_ACTIVE_HIGH>;
125689b937bSHsin-Yi Wang		pinctrl-names = "default";
126689b937bSHsin-Yi Wang		pinctrl-0 = <&ps8640_fixed_pins>;
127689b937bSHsin-Yi Wang	};
128689b937bSHsin-Yi Wang
129689b937bSHsin-Yi Wang	sdio_fixed_3v3: fixedregulator0 {
130689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
131689b937bSHsin-Yi Wang		regulator-name = "3V3";
132689b937bSHsin-Yi Wang		regulator-min-microvolt = <3300000>;
133689b937bSHsin-Yi Wang		regulator-max-microvolt = <3300000>;
134689b937bSHsin-Yi Wang		gpio = <&pio 85 GPIO_ACTIVE_HIGH>;
135689b937bSHsin-Yi Wang		pinctrl-names = "default";
136689b937bSHsin-Yi Wang		pinctrl-0 = <&sdio_fixed_3v3_pins>;
137689b937bSHsin-Yi Wang	};
138689b937bSHsin-Yi Wang
139689b937bSHsin-Yi Wang	sound: sound {
140689b937bSHsin-Yi Wang		compatible = "mediatek,mt8173-rt5650";
141689b937bSHsin-Yi Wang		mediatek,audio-codec = <&rt5650 &hdmi0>;
142689b937bSHsin-Yi Wang		mediatek,platform = <&afe>;
143689b937bSHsin-Yi Wang		pinctrl-names = "default";
144689b937bSHsin-Yi Wang		pinctrl-0 = <&aud_i2s2>;
145689b937bSHsin-Yi Wang
146689b937bSHsin-Yi Wang		mediatek,mclk = <1>;
147689b937bSHsin-Yi Wang		codec-capture {
148689b937bSHsin-Yi Wang			sound-dai = <&rt5650 1>;
149689b937bSHsin-Yi Wang		};
150689b937bSHsin-Yi Wang	};
151689b937bSHsin-Yi Wang
152689b937bSHsin-Yi Wang	hdmicon: connector {
153689b937bSHsin-Yi Wang		compatible = "hdmi-connector";
154689b937bSHsin-Yi Wang		label = "hdmi";
155689b937bSHsin-Yi Wang		type = "a";
156689b937bSHsin-Yi Wang		ddc-i2c-bus = <&hdmiddc0>;
157689b937bSHsin-Yi Wang
158689b937bSHsin-Yi Wang		port {
159689b937bSHsin-Yi Wang			hdmi_connector_in: endpoint {
160689b937bSHsin-Yi Wang				remote-endpoint = <&hdmi0_out>;
161689b937bSHsin-Yi Wang			};
162689b937bSHsin-Yi Wang		};
163689b937bSHsin-Yi Wang	};
164689b937bSHsin-Yi Wang};
165689b937bSHsin-Yi Wang
166689b937bSHsin-Yi Wang&cec {
167689b937bSHsin-Yi Wang	status = "okay";
168689b937bSHsin-Yi Wang};
169689b937bSHsin-Yi Wang
170689b937bSHsin-Yi Wang&cpu0 {
171689b937bSHsin-Yi Wang	proc-supply = <&mt6397_vpca15_reg>;
172689b937bSHsin-Yi Wang};
173689b937bSHsin-Yi Wang
174689b937bSHsin-Yi Wang&cpu1 {
175689b937bSHsin-Yi Wang	proc-supply = <&mt6397_vpca15_reg>;
176689b937bSHsin-Yi Wang};
177689b937bSHsin-Yi Wang
178689b937bSHsin-Yi Wang&cpu2 {
179689b937bSHsin-Yi Wang	proc-supply = <&da9211_vcpu_reg>;
180689b937bSHsin-Yi Wang	sram-supply = <&mt6397_vsramca7_reg>;
181689b937bSHsin-Yi Wang};
182689b937bSHsin-Yi Wang
183689b937bSHsin-Yi Wang&cpu3 {
184689b937bSHsin-Yi Wang	proc-supply = <&da9211_vcpu_reg>;
185689b937bSHsin-Yi Wang	sram-supply = <&mt6397_vsramca7_reg>;
186689b937bSHsin-Yi Wang};
187689b937bSHsin-Yi Wang
188689b937bSHsin-Yi Wang&cpu_thermal {
189689b937bSHsin-Yi Wang	sustainable-power = <4500>; /* milliwatts */
190689b937bSHsin-Yi Wang	trips {
191689b937bSHsin-Yi Wang		threshold: trip-point0 {
192689b937bSHsin-Yi Wang			temperature = <60000>;
193689b937bSHsin-Yi Wang		};
194689b937bSHsin-Yi Wang
195689b937bSHsin-Yi Wang		target: trip-point1 {
196689b937bSHsin-Yi Wang			temperature = <65000>;
197689b937bSHsin-Yi Wang		};
198689b937bSHsin-Yi Wang	};
199689b937bSHsin-Yi Wang};
200689b937bSHsin-Yi Wang
201689b937bSHsin-Yi Wang&dsi0 {
202689b937bSHsin-Yi Wang	status = "okay";
203689b937bSHsin-Yi Wang	ports {
204689b937bSHsin-Yi Wang		port {
205689b937bSHsin-Yi Wang			dsi0_out: endpoint {
206689b937bSHsin-Yi Wang				remote-endpoint = <&ps8640_in>;
207689b937bSHsin-Yi Wang			};
208689b937bSHsin-Yi Wang		};
209689b937bSHsin-Yi Wang	};
210689b937bSHsin-Yi Wang};
211689b937bSHsin-Yi Wang
212689b937bSHsin-Yi Wang&dpi0 {
213689b937bSHsin-Yi Wang	status = "okay";
214689b937bSHsin-Yi Wang};
215689b937bSHsin-Yi Wang
216689b937bSHsin-Yi Wang&hdmi0 {
217689b937bSHsin-Yi Wang	status = "okay";
218689b937bSHsin-Yi Wang	ports {
219689b937bSHsin-Yi Wang		port@1 {
220689b937bSHsin-Yi Wang			reg = <1>;
221689b937bSHsin-Yi Wang
222689b937bSHsin-Yi Wang			hdmi0_out: endpoint {
223689b937bSHsin-Yi Wang				remote-endpoint = <&hdmi_connector_in>;
224689b937bSHsin-Yi Wang			};
225689b937bSHsin-Yi Wang		};
226689b937bSHsin-Yi Wang	};
227689b937bSHsin-Yi Wang};
228689b937bSHsin-Yi Wang
229689b937bSHsin-Yi Wang&hdmi_phy {
230689b937bSHsin-Yi Wang	status = "okay";
231689b937bSHsin-Yi Wang	mediatek,ibias = <0xc>;
232689b937bSHsin-Yi Wang};
233689b937bSHsin-Yi Wang
234689b937bSHsin-Yi Wang&i2c0 {
235689b937bSHsin-Yi Wang	status = "okay";
236689b937bSHsin-Yi Wang
237689b937bSHsin-Yi Wang	rt5650: audio-codec@1a {
238689b937bSHsin-Yi Wang		compatible = "realtek,rt5650";
239689b937bSHsin-Yi Wang		reg = <0x1a>;
240689b937bSHsin-Yi Wang		avdd-supply = <&mt6397_vgp1_reg>;
241689b937bSHsin-Yi Wang		cpvdd-supply = <&mt6397_vcama_reg>;
242689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
243689b937bSHsin-Yi Wang		interrupts = <3 IRQ_TYPE_EDGE_BOTH>;
244689b937bSHsin-Yi Wang		pinctrl-names = "default";
245689b937bSHsin-Yi Wang		pinctrl-0 = <&rt5650_irq>;
246689b937bSHsin-Yi Wang		#sound-dai-cells = <1>;
247689b937bSHsin-Yi Wang		realtek,dmic1-data-pin = <2>;
248689b937bSHsin-Yi Wang		realtek,jd-mode = <2>;
249689b937bSHsin-Yi Wang	};
250689b937bSHsin-Yi Wang
251689b937bSHsin-Yi Wang	ps8640: edp-bridge@8 {
252689b937bSHsin-Yi Wang		compatible = "parade,ps8640";
253689b937bSHsin-Yi Wang		reg = <0x8>;
254689b937bSHsin-Yi Wang		powerdown-gpios = <&pio 127 GPIO_ACTIVE_LOW>;
255689b937bSHsin-Yi Wang		reset-gpios = <&pio 115 GPIO_ACTIVE_LOW>;
256689b937bSHsin-Yi Wang		pinctrl-names = "default";
257689b937bSHsin-Yi Wang		pinctrl-0 = <&ps8640_pins>;
258689b937bSHsin-Yi Wang		vdd12-supply = <&ps8640_fixed_1v2>;
259689b937bSHsin-Yi Wang		vdd33-supply = <&mt6397_vgp2_reg>;
260689b937bSHsin-Yi Wang
261689b937bSHsin-Yi Wang		ports {
262689b937bSHsin-Yi Wang			#address-cells = <1>;
263689b937bSHsin-Yi Wang			#size-cells = <0>;
264689b937bSHsin-Yi Wang
265689b937bSHsin-Yi Wang			port@0 {
266689b937bSHsin-Yi Wang				reg = <0>;
267689b937bSHsin-Yi Wang
268689b937bSHsin-Yi Wang				ps8640_in: endpoint {
269689b937bSHsin-Yi Wang					remote-endpoint = <&dsi0_out>;
270689b937bSHsin-Yi Wang				};
271689b937bSHsin-Yi Wang			};
272689b937bSHsin-Yi Wang
273689b937bSHsin-Yi Wang			port@1 {
274689b937bSHsin-Yi Wang				reg = <1>;
275689b937bSHsin-Yi Wang
276689b937bSHsin-Yi Wang				ps8640_out: endpoint {
277689b937bSHsin-Yi Wang					remote-endpoint = <&panel_in>;
278689b937bSHsin-Yi Wang				};
279689b937bSHsin-Yi Wang			};
280689b937bSHsin-Yi Wang		};
281689b937bSHsin-Yi Wang	};
282689b937bSHsin-Yi Wang};
283689b937bSHsin-Yi Wang
284689b937bSHsin-Yi Wang&i2c1 {
285689b937bSHsin-Yi Wang	clock-frequency = <1500000>;
286689b937bSHsin-Yi Wang	status = "okay";
287689b937bSHsin-Yi Wang
288689b937bSHsin-Yi Wang	da9211: da9211@68 {
289689b937bSHsin-Yi Wang		compatible = "dlg,da9211";
290689b937bSHsin-Yi Wang		reg = <0x68>;
291689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
292689b937bSHsin-Yi Wang		interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
293689b937bSHsin-Yi Wang
294689b937bSHsin-Yi Wang		regulators {
295689b937bSHsin-Yi Wang			da9211_vcpu_reg: BUCKA {
296689b937bSHsin-Yi Wang				regulator-name = "VBUCKA";
297689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
298689b937bSHsin-Yi Wang				regulator-max-microvolt = <1310000>;
299689b937bSHsin-Yi Wang				regulator-min-microamp  = <2000000>;
300689b937bSHsin-Yi Wang				regulator-max-microamp  = <4400000>;
301689b937bSHsin-Yi Wang				regulator-ramp-delay = <10000>;
302689b937bSHsin-Yi Wang				regulator-always-on;
3039d955478SDafna Hirschfeld				regulator-allowed-modes = <DA9211_BUCK_MODE_SYNC
3049d955478SDafna Hirschfeld							   DA9211_BUCK_MODE_AUTO>;
305689b937bSHsin-Yi Wang			};
306689b937bSHsin-Yi Wang
307689b937bSHsin-Yi Wang			da9211_vgpu_reg: BUCKB {
308689b937bSHsin-Yi Wang				regulator-name = "VBUCKB";
309689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
310689b937bSHsin-Yi Wang				regulator-max-microvolt = <1310000>;
311689b937bSHsin-Yi Wang				regulator-min-microamp  = <2000000>;
312689b937bSHsin-Yi Wang				regulator-max-microamp  = <3000000>;
313689b937bSHsin-Yi Wang				regulator-ramp-delay = <10000>;
314689b937bSHsin-Yi Wang			};
315689b937bSHsin-Yi Wang		};
316689b937bSHsin-Yi Wang	};
317689b937bSHsin-Yi Wang};
318689b937bSHsin-Yi Wang
319689b937bSHsin-Yi Wang&i2c2 {
320689b937bSHsin-Yi Wang	status = "okay";
321689b937bSHsin-Yi Wang
322689b937bSHsin-Yi Wang	tpm: tpm@20 {
323689b937bSHsin-Yi Wang		compatible = "infineon,slb9645tt";
324689b937bSHsin-Yi Wang		reg = <0x20>;
325689b937bSHsin-Yi Wang		powered-while-suspended;
326689b937bSHsin-Yi Wang	};
327689b937bSHsin-Yi Wang};
328689b937bSHsin-Yi Wang
329689b937bSHsin-Yi Wang&i2c3 {
330689b937bSHsin-Yi Wang	clock-frequency = <400000>;
331689b937bSHsin-Yi Wang	status = "okay";
332689b937bSHsin-Yi Wang
333689b937bSHsin-Yi Wang	touchscreen: touchscreen@10 {
334689b937bSHsin-Yi Wang		compatible = "elan,ekth3500";
335689b937bSHsin-Yi Wang		reg = <0x10>;
336689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
337689b937bSHsin-Yi Wang		interrupts = <88 IRQ_TYPE_LEVEL_LOW>;
338689b937bSHsin-Yi Wang	};
339689b937bSHsin-Yi Wang};
340689b937bSHsin-Yi Wang
341689b937bSHsin-Yi Wang&i2c4 {
342689b937bSHsin-Yi Wang	clock-frequency = <400000>;
343689b937bSHsin-Yi Wang	status = "okay";
344689b937bSHsin-Yi Wang	pinctrl-names = "default";
345689b937bSHsin-Yi Wang	pinctrl-0 = <&trackpad_irq>;
346689b937bSHsin-Yi Wang
347689b937bSHsin-Yi Wang	trackpad: trackpad@15 {
348689b937bSHsin-Yi Wang		compatible = "elan,ekth3000";
349689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
350689b937bSHsin-Yi Wang		interrupts = <117 IRQ_TYPE_LEVEL_LOW>;
351689b937bSHsin-Yi Wang		reg = <0x15>;
352689b937bSHsin-Yi Wang		vcc-supply = <&mt6397_vgp6_reg>;
353689b937bSHsin-Yi Wang		wakeup-source;
354689b937bSHsin-Yi Wang	};
355689b937bSHsin-Yi Wang};
356689b937bSHsin-Yi Wang
357689b937bSHsin-Yi Wang&mipi_tx0 {
358689b937bSHsin-Yi Wang	status = "okay";
359689b937bSHsin-Yi Wang};
360689b937bSHsin-Yi Wang
361689b937bSHsin-Yi Wang&mmc0 {
362689b937bSHsin-Yi Wang	status = "okay";
363689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
364689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc0_pins_default>;
365689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc0_pins_uhs>;
366689b937bSHsin-Yi Wang	bus-width = <8>;
367689b937bSHsin-Yi Wang	max-frequency = <200000000>;
368689b937bSHsin-Yi Wang	cap-mmc-highspeed;
369689b937bSHsin-Yi Wang	mmc-hs200-1_8v;
370689b937bSHsin-Yi Wang	mmc-hs400-1_8v;
371689b937bSHsin-Yi Wang	cap-mmc-hw-reset;
372689b937bSHsin-Yi Wang	hs400-ds-delay = <0x14015>;
373689b937bSHsin-Yi Wang	mediatek,hs200-cmd-int-delay=<30>;
374689b937bSHsin-Yi Wang	mediatek,hs400-cmd-int-delay=<14>;
375689b937bSHsin-Yi Wang	mediatek,hs400-cmd-resp-sel-rising;
376689b937bSHsin-Yi Wang	vmmc-supply = <&mt6397_vemc_3v3_reg>;
377689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vio18_reg>;
378689b937bSHsin-Yi Wang	assigned-clocks = <&topckgen CLK_TOP_MSDC50_0_SEL>;
379689b937bSHsin-Yi Wang	assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
380689b937bSHsin-Yi Wang	non-removable;
381689b937bSHsin-Yi Wang};
382689b937bSHsin-Yi Wang
383689b937bSHsin-Yi Wang&mmc1 {
384689b937bSHsin-Yi Wang	status = "okay";
385689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
386689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc1_pins_default>;
387689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc1_pins_uhs>;
388689b937bSHsin-Yi Wang	bus-width = <4>;
389689b937bSHsin-Yi Wang	max-frequency = <200000000>;
390689b937bSHsin-Yi Wang	cap-sd-highspeed;
391689b937bSHsin-Yi Wang	sd-uhs-sdr50;
392689b937bSHsin-Yi Wang	sd-uhs-sdr104;
393689b937bSHsin-Yi Wang	cd-gpios = <&pio 1 GPIO_ACTIVE_LOW>;
394689b937bSHsin-Yi Wang	vmmc-supply = <&mt6397_vmch_reg>;
395689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vmc_reg>;
396689b937bSHsin-Yi Wang};
397689b937bSHsin-Yi Wang
398689b937bSHsin-Yi Wang&mmc3 {
399689b937bSHsin-Yi Wang	status = "okay";
400689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
401689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc3_pins_default>;
402689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc3_pins_uhs>;
403689b937bSHsin-Yi Wang	bus-width = <4>;
404689b937bSHsin-Yi Wang	max-frequency = <200000000>;
405689b937bSHsin-Yi Wang	cap-sd-highspeed;
406689b937bSHsin-Yi Wang	sd-uhs-sdr50;
407689b937bSHsin-Yi Wang	sd-uhs-sdr104;
408689b937bSHsin-Yi Wang	keep-power-in-suspend;
409689b937bSHsin-Yi Wang	enable-sdio-wakeup;
410689b937bSHsin-Yi Wang	cap-sdio-irq;
411689b937bSHsin-Yi Wang	vmmc-supply = <&sdio_fixed_3v3>;
412689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vgp3_reg>;
413689b937bSHsin-Yi Wang	non-removable;
414689b937bSHsin-Yi Wang	cap-power-off-card;
415689b937bSHsin-Yi Wang
416689b937bSHsin-Yi Wang	#address-cells = <1>;
417689b937bSHsin-Yi Wang	#size-cells = <0>;
418689b937bSHsin-Yi Wang
419689b937bSHsin-Yi Wang	btmrvl: btmrvl@2 {
420689b937bSHsin-Yi Wang		compatible = "marvell,sd8897-bt";
421689b937bSHsin-Yi Wang		reg = <2>;
422689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
423689b937bSHsin-Yi Wang		interrupts = <119 IRQ_TYPE_LEVEL_LOW>;
424689b937bSHsin-Yi Wang		marvell,wakeup-pin = /bits/ 16 <0x0d>;
425689b937bSHsin-Yi Wang		marvell,wakeup-gap-ms = /bits/ 16 <0x64>;
426689b937bSHsin-Yi Wang	};
427689b937bSHsin-Yi Wang
428689b937bSHsin-Yi Wang	mwifiex: mwifiex@1 {
429689b937bSHsin-Yi Wang		compatible = "marvell,sd8897";
430689b937bSHsin-Yi Wang		reg = <1>;
431689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
432689b937bSHsin-Yi Wang		interrupts = <38 IRQ_TYPE_LEVEL_LOW>;
433689b937bSHsin-Yi Wang		marvell,wakeup-pin = <3>;
434689b937bSHsin-Yi Wang	};
435689b937bSHsin-Yi Wang};
436689b937bSHsin-Yi Wang
437689b937bSHsin-Yi Wang&nor_flash {
438689b937bSHsin-Yi Wang	status = "okay";
439689b937bSHsin-Yi Wang	pinctrl-names = "default";
440689b937bSHsin-Yi Wang	pinctrl-0 = <&nor_gpio1_pins>;
4411276be23SHsin-Yi Wang
442689b937bSHsin-Yi Wang	flash@0 {
443689b937bSHsin-Yi Wang		compatible = "jedec,spi-nor";
444689b937bSHsin-Yi Wang		reg = <0>;
4451276be23SHsin-Yi Wang		spi-max-frequency = <50000000>;
446689b937bSHsin-Yi Wang	};
447689b937bSHsin-Yi Wang};
448689b937bSHsin-Yi Wang
449689b937bSHsin-Yi Wang&pio {
450689b937bSHsin-Yi Wang	gpio-line-names = "EC_INT_1V8",
451689b937bSHsin-Yi Wang			  "SD_CD_L",
452689b937bSHsin-Yi Wang			  "ALC5514_IRQ",
453689b937bSHsin-Yi Wang			  "ALC5650_IRQ",
454689b937bSHsin-Yi Wang			  /*
455689b937bSHsin-Yi Wang			   * AP_FLASH_WP_L is crossystem ABI. Schematics
456689b937bSHsin-Yi Wang			   * call it SFWP_B.
457689b937bSHsin-Yi Wang			   */
458689b937bSHsin-Yi Wang			  "AP_FLASH_WP_L",
459689b937bSHsin-Yi Wang			  "SFIN",
460689b937bSHsin-Yi Wang			  "SFCS0",
461689b937bSHsin-Yi Wang			  "SFHOLD",
462689b937bSHsin-Yi Wang			  "SFOUT",
463689b937bSHsin-Yi Wang			  "SFCK",
464689b937bSHsin-Yi Wang			  "WRAP_EVENT_S_EINT10",
465689b937bSHsin-Yi Wang			  "PMU_INT",
466689b937bSHsin-Yi Wang			  "I2S2_WS_ALC5650",
467689b937bSHsin-Yi Wang			  "I2S2_BCK_ALC5650",
468689b937bSHsin-Yi Wang			  "PWR_BTN_1V8",
469689b937bSHsin-Yi Wang			  "DA9212_IRQ",
470689b937bSHsin-Yi Wang			  "IDDIG",
471689b937bSHsin-Yi Wang			  "WATCHDOG",
472689b937bSHsin-Yi Wang			  "CEC",
473689b937bSHsin-Yi Wang			  "HDMISCK",
474689b937bSHsin-Yi Wang			  "HDMISD",
475689b937bSHsin-Yi Wang			  "HTPLG",
476689b937bSHsin-Yi Wang			  "MSDC3_DAT0",
477689b937bSHsin-Yi Wang			  "MSDC3_DAT1",
478689b937bSHsin-Yi Wang			  "MSDC3_DAT2",
479689b937bSHsin-Yi Wang			  "MSDC3_DAT3",
480689b937bSHsin-Yi Wang			  "MSDC3_CLK",
481689b937bSHsin-Yi Wang			  "MSDC3_CMD",
482689b937bSHsin-Yi Wang			  "USB_C0_OC_FLAGB",
483689b937bSHsin-Yi Wang			  "USBA_OC1_L",
484689b937bSHsin-Yi Wang			  "PS8640_1V2_ENABLE",
485689b937bSHsin-Yi Wang			  "THERM_ALERT_N",
486689b937bSHsin-Yi Wang			  "PANEL_LCD_POWER_EN",
487689b937bSHsin-Yi Wang			  "ANX7688_CHIP_PD_C",
488689b937bSHsin-Yi Wang			  "EC_IN_RW_1V8",
489689b937bSHsin-Yi Wang			  "ANX7688_1V_EN_C",
490689b937bSHsin-Yi Wang			  "USB_DP_HPD_C",
491689b937bSHsin-Yi Wang			  "TPM_DAVINT_N",
492689b937bSHsin-Yi Wang			  "MARVELL8897_IRQ",
493689b937bSHsin-Yi Wang			  "EN_USB_A0_PWR",
494689b937bSHsin-Yi Wang			  "USBA_A0_OC_L",
495689b937bSHsin-Yi Wang			  "EN_PP3300_DX_EDP",
496689b937bSHsin-Yi Wang			  "",
497689b937bSHsin-Yi Wang			  "SOC_I2C2_1V8_SDA_400K",
498689b937bSHsin-Yi Wang			  "SOC_I2C2_1V8_SCL_400K",
499689b937bSHsin-Yi Wang			  "SOC_I2C0_1V8_SDA_400K",
500689b937bSHsin-Yi Wang			  "SOC_I2C0_1V8_SCL_400K",
501689b937bSHsin-Yi Wang			  "EMMC_ID1",
502689b937bSHsin-Yi Wang			  "EMMC_ID0",
503689b937bSHsin-Yi Wang			  "MEM_CONFIG3",
504689b937bSHsin-Yi Wang			  "EMMC_ID2",
505689b937bSHsin-Yi Wang			  "MEM_CONFIG1",
506689b937bSHsin-Yi Wang			  "MEM_CONFIG2",
507689b937bSHsin-Yi Wang			  "BRD_ID2",
508689b937bSHsin-Yi Wang			  "MEM_CONFIG0",
509689b937bSHsin-Yi Wang			  "BRD_ID0",
510689b937bSHsin-Yi Wang			  "BRD_ID1",
511689b937bSHsin-Yi Wang			  "EMMC_DAT0",
512689b937bSHsin-Yi Wang			  "EMMC_DAT1",
513689b937bSHsin-Yi Wang			  "EMMC_DAT2",
514689b937bSHsin-Yi Wang			  "EMMC_DAT3",
515689b937bSHsin-Yi Wang			  "EMMC_DAT4",
516689b937bSHsin-Yi Wang			  "EMMC_DAT5",
517689b937bSHsin-Yi Wang			  "EMMC_DAT6",
518689b937bSHsin-Yi Wang			  "EMMC_DAT7",
519689b937bSHsin-Yi Wang			  "EMMC_CLK",
520689b937bSHsin-Yi Wang			  "EMMC_CMD",
521689b937bSHsin-Yi Wang			  "EMMC_RCLK",
522689b937bSHsin-Yi Wang			  "PLT_RST_L",
523689b937bSHsin-Yi Wang			  "LID_OPEN_1V8_L",
524689b937bSHsin-Yi Wang			  "AUDIO_SPI_MISO_R",
525689b937bSHsin-Yi Wang			  "",
526689b937bSHsin-Yi Wang			  "AC_OK_1V8",
527689b937bSHsin-Yi Wang			  "SD_DATA0",
528689b937bSHsin-Yi Wang			  "SD_DATA1",
529689b937bSHsin-Yi Wang			  "SD_DATA2",
530689b937bSHsin-Yi Wang			  "SD_DATA3",
531689b937bSHsin-Yi Wang			  "SD_CLK",
532689b937bSHsin-Yi Wang			  "SD_CMD",
533689b937bSHsin-Yi Wang			  "PWRAP_SPI0_MI",
534689b937bSHsin-Yi Wang			  "PWRAP_SPI0_MO",
535689b937bSHsin-Yi Wang			  "PWRAP_SPI0_CK",
536689b937bSHsin-Yi Wang			  "PWRAP_SPI0_CSN",
537689b937bSHsin-Yi Wang			  "",
538689b937bSHsin-Yi Wang			  "",
539689b937bSHsin-Yi Wang			  "WIFI_PDN",
540689b937bSHsin-Yi Wang			  "RTC32K_1V8",
541689b937bSHsin-Yi Wang			  "DISP_PWM0",
542689b937bSHsin-Yi Wang			  "TOUCHSCREEN_INT_L",
543689b937bSHsin-Yi Wang			  "",
544689b937bSHsin-Yi Wang			  "SRCLKENA0",
545689b937bSHsin-Yi Wang			  "SRCLKENA1",
546689b937bSHsin-Yi Wang			  "PS8640_MODE_CONF",
547689b937bSHsin-Yi Wang			  "TOUCHSCREEN_RESET_R",
548689b937bSHsin-Yi Wang			  "PLATFORM_PROCHOT_L",
549689b937bSHsin-Yi Wang			  "PANEL_POWER_EN",
550689b937bSHsin-Yi Wang			  "REC_MODE_L",
551689b937bSHsin-Yi Wang			  "EC_FW_UPDATE_L",
552689b937bSHsin-Yi Wang			  "ACCEL2_INT_L",
553689b937bSHsin-Yi Wang			  "HDMI_DP_INT",
554689b937bSHsin-Yi Wang			  "ACCELGYRO3_INT_L",
555689b937bSHsin-Yi Wang			  "ACCELGYRO4_INT_L",
556689b937bSHsin-Yi Wang			  "SPI_EC_CLK",
557689b937bSHsin-Yi Wang			  "SPI_EC_MI",
558689b937bSHsin-Yi Wang			  "SPI_EC_MO",
559689b937bSHsin-Yi Wang			  "SPI_EC_CSN",
560689b937bSHsin-Yi Wang			  "SOC_I2C3_1V8_SDA_400K",
561689b937bSHsin-Yi Wang			  "SOC_I2C3_1V8_SCL_400K",
562689b937bSHsin-Yi Wang			  "",
563689b937bSHsin-Yi Wang			  "",
564689b937bSHsin-Yi Wang			  "",
565689b937bSHsin-Yi Wang			  "",
566689b937bSHsin-Yi Wang			  "",
567689b937bSHsin-Yi Wang			  "",
568689b937bSHsin-Yi Wang			  "",
569689b937bSHsin-Yi Wang			  "PS8640_SYSRSTN_1V8",
570689b937bSHsin-Yi Wang			  "APIN_MAX98090_DOUT2",
571689b937bSHsin-Yi Wang			  "TP_INT_1V8_L_R",
572689b937bSHsin-Yi Wang			  "RST_USB_HUB_R",
573689b937bSHsin-Yi Wang			  "BT_WAKE_L",
574689b937bSHsin-Yi Wang			  "ACCEL1_INT_L",
575689b937bSHsin-Yi Wang			  "TABLET_MODE_L",
576689b937bSHsin-Yi Wang			  "",
577689b937bSHsin-Yi Wang			  "V_UP_IN_L_R",
578689b937bSHsin-Yi Wang			  "V_DOWN_IN_L_R",
579689b937bSHsin-Yi Wang			  "SOC_I2C1_1V8_SDA_1M",
580689b937bSHsin-Yi Wang			  "SOC_I2C1_1V8_SCL_1M",
581689b937bSHsin-Yi Wang			  "PS8640_PDN_1V8",
582689b937bSHsin-Yi Wang			  "MAX98090_LRCLK",
583689b937bSHsin-Yi Wang			  "MAX98090_BCLK",
584689b937bSHsin-Yi Wang			  "MAX98090_MCLK",
585689b937bSHsin-Yi Wang			  "APOUT_MAX98090_DIN",
586689b937bSHsin-Yi Wang			  "APIN_MAX98090_DOUT",
587689b937bSHsin-Yi Wang			  "SOC_I2C4_1V8_SDA_400K",
588689b937bSHsin-Yi Wang			  "SOC_I2C4_1V8_SCL_400K";
589689b937bSHsin-Yi Wang
590689b937bSHsin-Yi Wang	aud_i2s2: aud_i2s2 {
591689b937bSHsin-Yi Wang		pins1 {
592689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_128_I2S0_LRCK__FUNC_I2S1_WS>,
593689b937bSHsin-Yi Wang				 <MT8173_PIN_129_I2S0_BCK__FUNC_I2S1_BCK>,
594689b937bSHsin-Yi Wang				 <MT8173_PIN_130_I2S0_MCK__FUNC_I2S1_MCK>,
595689b937bSHsin-Yi Wang				 <MT8173_PIN_131_I2S0_DATA0__FUNC_I2S1_DO_1>,
596689b937bSHsin-Yi Wang				 <MT8173_PIN_12_EINT12__FUNC_I2S2_WS>,
597689b937bSHsin-Yi Wang				 <MT8173_PIN_13_EINT13__FUNC_I2S2_BCK>,
598689b937bSHsin-Yi Wang				 <MT8173_PIN_132_I2S0_DATA1__FUNC_I2S2_DI_2>;
599689b937bSHsin-Yi Wang			bias-pull-down;
600689b937bSHsin-Yi Wang		};
601689b937bSHsin-Yi Wang	};
602689b937bSHsin-Yi Wang
603689b937bSHsin-Yi Wang	bl_fixed_pins: bl_fixed_pins {
604689b937bSHsin-Yi Wang		pins1 {
605689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_32_UTXD2__FUNC_GPIO32>;
606689b937bSHsin-Yi Wang			output-low;
607689b937bSHsin-Yi Wang		};
608689b937bSHsin-Yi Wang	};
609689b937bSHsin-Yi Wang
610689b937bSHsin-Yi Wang	bt_wake_pins: bt_wake_pins {
611689b937bSHsin-Yi Wang		pins1 {
612689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_119_KPROW0__FUNC_GPIO119>;
613689b937bSHsin-Yi Wang			bias-pull-up;
614689b937bSHsin-Yi Wang		};
615689b937bSHsin-Yi Wang	};
616689b937bSHsin-Yi Wang
617689b937bSHsin-Yi Wang	disp_pwm0_pins: disp_pwm0_pins {
618689b937bSHsin-Yi Wang		pins1 {
619689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_87_DISP_PWM0__FUNC_DISP_PWM0>;
620689b937bSHsin-Yi Wang			output-low;
621689b937bSHsin-Yi Wang		};
622689b937bSHsin-Yi Wang	};
623689b937bSHsin-Yi Wang
624689b937bSHsin-Yi Wang	gpio_keys_pins: gpio_keys_pins {
625689b937bSHsin-Yi Wang		volume_pins {
626689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_123_KPCOL1__FUNC_GPIO123>,
627689b937bSHsin-Yi Wang				 <MT8173_PIN_124_KPCOL2__FUNC_GPIO124>;
628689b937bSHsin-Yi Wang			bias-pull-up;
629689b937bSHsin-Yi Wang		};
630689b937bSHsin-Yi Wang
631689b937bSHsin-Yi Wang		tablet_mode_pins {
632689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_121_KPROW2__FUNC_GPIO121>;
633689b937bSHsin-Yi Wang			bias-pull-up;
634689b937bSHsin-Yi Wang		};
635689b937bSHsin-Yi Wang	};
636689b937bSHsin-Yi Wang
637689b937bSHsin-Yi Wang	hdmi_mux_pins: hdmi_mux_pins {
638689b937bSHsin-Yi Wang		pins1 {
639689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_36_DAISYNC__FUNC_GPIO36>;
640689b937bSHsin-Yi Wang		};
641689b937bSHsin-Yi Wang	};
642689b937bSHsin-Yi Wang
643689b937bSHsin-Yi Wang	i2c1_pins_a: i2c1 {
644689b937bSHsin-Yi Wang		da9211_pins {
645689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_15_EINT15__FUNC_GPIO15>;
646689b937bSHsin-Yi Wang			bias-pull-up;
647689b937bSHsin-Yi Wang		};
648689b937bSHsin-Yi Wang	};
649689b937bSHsin-Yi Wang
650689b937bSHsin-Yi Wang	mmc0_pins_default: mmc0default {
651689b937bSHsin-Yi Wang		pins_cmd_dat {
652689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
653689b937bSHsin-Yi Wang				 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
654689b937bSHsin-Yi Wang				 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
655689b937bSHsin-Yi Wang				 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
656689b937bSHsin-Yi Wang				 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
657689b937bSHsin-Yi Wang				 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
658689b937bSHsin-Yi Wang				 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
659689b937bSHsin-Yi Wang				 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
660689b937bSHsin-Yi Wang				 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
661689b937bSHsin-Yi Wang			bias-pull-up;
662689b937bSHsin-Yi Wang		};
663689b937bSHsin-Yi Wang
664689b937bSHsin-Yi Wang		pins_clk {
665689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
666689b937bSHsin-Yi Wang			bias-pull-down;
667689b937bSHsin-Yi Wang		};
668689b937bSHsin-Yi Wang
669689b937bSHsin-Yi Wang		pins_rst {
670689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
671689b937bSHsin-Yi Wang			bias-pull-up;
672689b937bSHsin-Yi Wang		};
673689b937bSHsin-Yi Wang	};
674689b937bSHsin-Yi Wang
675689b937bSHsin-Yi Wang	mmc1_pins_default: mmc1default {
676689b937bSHsin-Yi Wang		pins_cmd_dat {
677689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
678689b937bSHsin-Yi Wang				 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
679689b937bSHsin-Yi Wang				 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
680689b937bSHsin-Yi Wang				 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
681689b937bSHsin-Yi Wang				 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
682689b937bSHsin-Yi Wang			input-enable;
683689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
684689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
685689b937bSHsin-Yi Wang		};
686689b937bSHsin-Yi Wang
687689b937bSHsin-Yi Wang		pins_clk {
688689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
689689b937bSHsin-Yi Wang			bias-pull-down;
690689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
691689b937bSHsin-Yi Wang		};
692689b937bSHsin-Yi Wang
693689b937bSHsin-Yi Wang		pins_insert {
694689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_1_EINT1__FUNC_GPIO1>;
695689b937bSHsin-Yi Wang			bias-pull-up;
696689b937bSHsin-Yi Wang		};
697689b937bSHsin-Yi Wang	};
698689b937bSHsin-Yi Wang
699689b937bSHsin-Yi Wang	mmc3_pins_default: mmc3default {
700689b937bSHsin-Yi Wang		pins_dat {
701689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_22_MSDC3_DAT0__FUNC_MSDC3_DAT0>,
702689b937bSHsin-Yi Wang				 <MT8173_PIN_23_MSDC3_DAT1__FUNC_MSDC3_DAT1>,
703689b937bSHsin-Yi Wang				 <MT8173_PIN_24_MSDC3_DAT2__FUNC_MSDC3_DAT2>,
704689b937bSHsin-Yi Wang				 <MT8173_PIN_25_MSDC3_DAT3__FUNC_MSDC3_DAT3>;
705689b937bSHsin-Yi Wang			input-enable;
706689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
707689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
708689b937bSHsin-Yi Wang		};
709689b937bSHsin-Yi Wang
710689b937bSHsin-Yi Wang		pins_cmd {
711689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_27_MSDC3_CMD__FUNC_MSDC3_CMD>;
712689b937bSHsin-Yi Wang			input-enable;
713689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
714689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
715689b937bSHsin-Yi Wang		};
716689b937bSHsin-Yi Wang
717689b937bSHsin-Yi Wang		pins_clk {
718689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_26_MSDC3_CLK__FUNC_MSDC3_CLK>;
719689b937bSHsin-Yi Wang			bias-pull-down;
720689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
721689b937bSHsin-Yi Wang		};
722689b937bSHsin-Yi Wang	};
723689b937bSHsin-Yi Wang
724689b937bSHsin-Yi Wang	mmc0_pins_uhs: mmc0 {
725689b937bSHsin-Yi Wang		pins_cmd_dat {
726689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
727689b937bSHsin-Yi Wang				 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
728689b937bSHsin-Yi Wang				 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
729689b937bSHsin-Yi Wang				 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
730689b937bSHsin-Yi Wang				 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
731689b937bSHsin-Yi Wang				 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
732689b937bSHsin-Yi Wang				 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
733689b937bSHsin-Yi Wang				 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
734689b937bSHsin-Yi Wang				 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
735689b937bSHsin-Yi Wang			input-enable;
736689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
737689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
738689b937bSHsin-Yi Wang		};
739689b937bSHsin-Yi Wang
740689b937bSHsin-Yi Wang		pins_clk {
741689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
742689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
743689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
744689b937bSHsin-Yi Wang		};
745689b937bSHsin-Yi Wang
746689b937bSHsin-Yi Wang		pins_ds {
747689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_67_MSDC0_DSL__FUNC_MSDC0_DSL>;
748689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_10mA>;
749689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
750689b937bSHsin-Yi Wang		};
751689b937bSHsin-Yi Wang
752689b937bSHsin-Yi Wang		pins_rst {
753689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
754689b937bSHsin-Yi Wang			bias-pull-up;
755689b937bSHsin-Yi Wang		};
756689b937bSHsin-Yi Wang	};
757689b937bSHsin-Yi Wang
758689b937bSHsin-Yi Wang	mmc1_pins_uhs: mmc1 {
759689b937bSHsin-Yi Wang		pins_cmd_dat {
760689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
761689b937bSHsin-Yi Wang				 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
762689b937bSHsin-Yi Wang				 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
763689b937bSHsin-Yi Wang				 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
764689b937bSHsin-Yi Wang				 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
765689b937bSHsin-Yi Wang			input-enable;
766689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
767689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
768689b937bSHsin-Yi Wang		};
769689b937bSHsin-Yi Wang
770689b937bSHsin-Yi Wang		pins_clk {
771689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
772689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
773689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
774689b937bSHsin-Yi Wang		};
775689b937bSHsin-Yi Wang	};
776689b937bSHsin-Yi Wang
777689b937bSHsin-Yi Wang	mmc3_pins_uhs: mmc3 {
778689b937bSHsin-Yi Wang		pins_dat {
779689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_22_MSDC3_DAT0__FUNC_MSDC3_DAT0>,
780689b937bSHsin-Yi Wang				 <MT8173_PIN_23_MSDC3_DAT1__FUNC_MSDC3_DAT1>,
781689b937bSHsin-Yi Wang				 <MT8173_PIN_24_MSDC3_DAT2__FUNC_MSDC3_DAT2>,
782689b937bSHsin-Yi Wang				 <MT8173_PIN_25_MSDC3_DAT3__FUNC_MSDC3_DAT3>;
783689b937bSHsin-Yi Wang			input-enable;
784689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
785689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
786689b937bSHsin-Yi Wang		};
787689b937bSHsin-Yi Wang
788689b937bSHsin-Yi Wang		pins_cmd {
789689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_27_MSDC3_CMD__FUNC_MSDC3_CMD>;
790689b937bSHsin-Yi Wang			input-enable;
791689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
792689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
793689b937bSHsin-Yi Wang		};
794689b937bSHsin-Yi Wang
795689b937bSHsin-Yi Wang		pins_clk {
796689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_26_MSDC3_CLK__FUNC_MSDC3_CLK>;
797689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
798689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
799689b937bSHsin-Yi Wang		};
800689b937bSHsin-Yi Wang	};
801689b937bSHsin-Yi Wang
802689b937bSHsin-Yi Wang	nor_gpio1_pins: nor {
803689b937bSHsin-Yi Wang		pins1 {
804689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_6_EINT6__FUNC_SFCS0>,
805689b937bSHsin-Yi Wang				 <MT8173_PIN_7_EINT7__FUNC_SFHOLD>,
806689b937bSHsin-Yi Wang				 <MT8173_PIN_8_EINT8__FUNC_SFIN>;
807689b937bSHsin-Yi Wang			input-enable;
808689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
809689b937bSHsin-Yi Wang			bias-pull-up;
810689b937bSHsin-Yi Wang		};
811689b937bSHsin-Yi Wang
812689b937bSHsin-Yi Wang		pins2 {
813689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_5_EINT5__FUNC_SFOUT>;
814689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
815689b937bSHsin-Yi Wang			bias-pull-up;
816689b937bSHsin-Yi Wang		};
817689b937bSHsin-Yi Wang
818689b937bSHsin-Yi Wang		pins_clk {
819689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_9_EINT9__FUNC_SFCK>;
820689b937bSHsin-Yi Wang			input-enable;
821689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
822689b937bSHsin-Yi Wang			bias-pull-up;
823689b937bSHsin-Yi Wang		};
824689b937bSHsin-Yi Wang	};
825689b937bSHsin-Yi Wang
826689b937bSHsin-Yi Wang	panel_fixed_pins: panel_fixed_pins {
827689b937bSHsin-Yi Wang		pins1 {
828689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_41_CMMCLK__FUNC_GPIO41>;
829689b937bSHsin-Yi Wang		};
830689b937bSHsin-Yi Wang	};
831689b937bSHsin-Yi Wang
832689b937bSHsin-Yi Wang	ps8640_pins: ps8640_pins {
833689b937bSHsin-Yi Wang		pins1 {
834689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_92_PCM_CLK__FUNC_GPIO92>,
835689b937bSHsin-Yi Wang				 <MT8173_PIN_115_URTS0__FUNC_GPIO115>,
836689b937bSHsin-Yi Wang				 <MT8173_PIN_127_LCM_RST__FUNC_GPIO127>;
837689b937bSHsin-Yi Wang		};
838689b937bSHsin-Yi Wang	};
839689b937bSHsin-Yi Wang
840689b937bSHsin-Yi Wang	ps8640_fixed_pins: ps8640_fixed_pins {
841689b937bSHsin-Yi Wang		pins1 {
842689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_30_URTS2__FUNC_GPIO30>;
843689b937bSHsin-Yi Wang		};
844689b937bSHsin-Yi Wang	};
845689b937bSHsin-Yi Wang
846689b937bSHsin-Yi Wang	rt5650_irq: rt5650_irq {
847689b937bSHsin-Yi Wang		pins1 {
848689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_3_EINT3__FUNC_GPIO3>;
849689b937bSHsin-Yi Wang			bias-pull-down;
850689b937bSHsin-Yi Wang		};
851689b937bSHsin-Yi Wang	};
852689b937bSHsin-Yi Wang
853689b937bSHsin-Yi Wang	sdio_fixed_3v3_pins: sdio_fixed_3v3_pins {
854689b937bSHsin-Yi Wang		pins1 {
855689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_85_AUD_DAT_MOSI__FUNC_GPIO85>;
856689b937bSHsin-Yi Wang			output-low;
857689b937bSHsin-Yi Wang		};
858689b937bSHsin-Yi Wang	};
859689b937bSHsin-Yi Wang
860689b937bSHsin-Yi Wang	spi_pins_a: spi1 {
861689b937bSHsin-Yi Wang		pins1 {
862689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_0_EINT0__FUNC_GPIO0>;
863689b937bSHsin-Yi Wang			bias-pull-up;
864689b937bSHsin-Yi Wang		};
865689b937bSHsin-Yi Wang
866689b937bSHsin-Yi Wang		pins_spi {
867689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_102_MSDC2_DAT2__FUNC_SPI_CK_1_>,
868689b937bSHsin-Yi Wang				 <MT8173_PIN_103_MSDC2_DAT3__FUNC_SPI_MI_1_>,
869689b937bSHsin-Yi Wang				 <MT8173_PIN_104_MSDC2_CLK__FUNC_SPI_MO_1_>,
870689b937bSHsin-Yi Wang				 <MT8173_PIN_105_MSDC2_CMD__FUNC_SPI_CS_1_>;
871689b937bSHsin-Yi Wang			bias-disable;
872689b937bSHsin-Yi Wang		};
873689b937bSHsin-Yi Wang	};
874689b937bSHsin-Yi Wang
875689b937bSHsin-Yi Wang	trackpad_irq: trackpad_irq {
876689b937bSHsin-Yi Wang		pins1 {
877689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_117_URXD3__FUNC_GPIO117>;
878689b937bSHsin-Yi Wang			input-enable;
879689b937bSHsin-Yi Wang			bias-pull-up;
880689b937bSHsin-Yi Wang		};
881689b937bSHsin-Yi Wang	};
882689b937bSHsin-Yi Wang
883689b937bSHsin-Yi Wang	usb_pins: usb {
884689b937bSHsin-Yi Wang		pins1 {
885689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_101_MSDC2_DAT1__FUNC_GPIO101>;
886689b937bSHsin-Yi Wang			output-high;
887689b937bSHsin-Yi Wang			bias-disable;
888689b937bSHsin-Yi Wang		};
889689b937bSHsin-Yi Wang	};
890689b937bSHsin-Yi Wang
891689b937bSHsin-Yi Wang	wifi_wake_pins: wifi_wake_pins {
892689b937bSHsin-Yi Wang		pins1 {
893689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_38_CONN_RST__FUNC_GPIO38>;
894689b937bSHsin-Yi Wang			bias-pull-up;
895689b937bSHsin-Yi Wang		};
896689b937bSHsin-Yi Wang	};
897689b937bSHsin-Yi Wang};
898689b937bSHsin-Yi Wang
899689b937bSHsin-Yi Wang&pwm0 {
900689b937bSHsin-Yi Wang	status = "okay";
901689b937bSHsin-Yi Wang};
902689b937bSHsin-Yi Wang
903689b937bSHsin-Yi Wang&pwrap {
904689b937bSHsin-Yi Wang	pmic: mt6397 {
905689b937bSHsin-Yi Wang		compatible = "mediatek,mt6397";
906689b937bSHsin-Yi Wang		#address-cells = <1>;
907689b937bSHsin-Yi Wang		#size-cells = <1>;
908689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
909689b937bSHsin-Yi Wang		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
910689b937bSHsin-Yi Wang		interrupt-controller;
911689b937bSHsin-Yi Wang		#interrupt-cells = <2>;
912689b937bSHsin-Yi Wang
913689b937bSHsin-Yi Wang		clock: mt6397clock {
914689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-clk";
915689b937bSHsin-Yi Wang			#clock-cells = <1>;
916689b937bSHsin-Yi Wang		};
917689b937bSHsin-Yi Wang
918689b937bSHsin-Yi Wang		pio6397: pinctrl {
919689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-pinctrl";
920689b937bSHsin-Yi Wang			pins-are-numbered;
921689b937bSHsin-Yi Wang			gpio-controller;
922689b937bSHsin-Yi Wang			#gpio-cells = <2>;
923689b937bSHsin-Yi Wang		};
924689b937bSHsin-Yi Wang
925689b937bSHsin-Yi Wang		regulator: mt6397regulator {
926689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-regulator";
927689b937bSHsin-Yi Wang
928689b937bSHsin-Yi Wang			mt6397_vpca15_reg: buck_vpca15 {
929689b937bSHsin-Yi Wang				regulator-compatible = "buck_vpca15";
930689b937bSHsin-Yi Wang				regulator-name = "vpca15";
931689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
932689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
933689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
934689b937bSHsin-Yi Wang				regulator-always-on;
935689b937bSHsin-Yi Wang				regulator-allowed-modes = <0 1>;
936689b937bSHsin-Yi Wang			};
937689b937bSHsin-Yi Wang
938689b937bSHsin-Yi Wang			mt6397_vpca7_reg: buck_vpca7 {
939689b937bSHsin-Yi Wang				regulator-compatible = "buck_vpca7";
940689b937bSHsin-Yi Wang				regulator-name = "vpca7";
941689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
942689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
943689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
944689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <115>;
945689b937bSHsin-Yi Wang				regulator-always-on;
946689b937bSHsin-Yi Wang			};
947689b937bSHsin-Yi Wang
948689b937bSHsin-Yi Wang			mt6397_vsramca15_reg: buck_vsramca15 {
949689b937bSHsin-Yi Wang				regulator-compatible = "buck_vsramca15";
950689b937bSHsin-Yi Wang				regulator-name = "vsramca15";
951689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
952689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
953689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
954689b937bSHsin-Yi Wang				regulator-always-on;
955689b937bSHsin-Yi Wang			};
956689b937bSHsin-Yi Wang
957689b937bSHsin-Yi Wang			mt6397_vsramca7_reg: buck_vsramca7 {
958689b937bSHsin-Yi Wang				regulator-compatible = "buck_vsramca7";
959689b937bSHsin-Yi Wang				regulator-name = "vsramca7";
960689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
961689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
962689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
963689b937bSHsin-Yi Wang				regulator-always-on;
964689b937bSHsin-Yi Wang			};
965689b937bSHsin-Yi Wang
966689b937bSHsin-Yi Wang			mt6397_vcore_reg: buck_vcore {
967689b937bSHsin-Yi Wang				regulator-compatible = "buck_vcore";
968689b937bSHsin-Yi Wang				regulator-name = "vcore";
969689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
970689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
971689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
972689b937bSHsin-Yi Wang				regulator-always-on;
973689b937bSHsin-Yi Wang			};
974689b937bSHsin-Yi Wang
975689b937bSHsin-Yi Wang			mt6397_vgpu_reg: buck_vgpu {
976689b937bSHsin-Yi Wang				regulator-compatible = "buck_vgpu";
977689b937bSHsin-Yi Wang				regulator-name = "vgpu";
978689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
979689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
980689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
981689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <115>;
982689b937bSHsin-Yi Wang			};
983689b937bSHsin-Yi Wang
984689b937bSHsin-Yi Wang			mt6397_vdrm_reg: buck_vdrm {
985689b937bSHsin-Yi Wang				regulator-compatible = "buck_vdrm";
986689b937bSHsin-Yi Wang				regulator-name = "vdrm";
987689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
988689b937bSHsin-Yi Wang				regulator-max-microvolt = <1400000>;
989689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
990689b937bSHsin-Yi Wang				regulator-always-on;
991689b937bSHsin-Yi Wang			};
992689b937bSHsin-Yi Wang
993689b937bSHsin-Yi Wang			mt6397_vio18_reg: buck_vio18 {
994689b937bSHsin-Yi Wang				regulator-compatible = "buck_vio18";
995689b937bSHsin-Yi Wang				regulator-name = "vio18";
996689b937bSHsin-Yi Wang				regulator-min-microvolt = <1620000>;
997689b937bSHsin-Yi Wang				regulator-max-microvolt = <1980000>;
998689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
999689b937bSHsin-Yi Wang				regulator-always-on;
1000689b937bSHsin-Yi Wang			};
1001689b937bSHsin-Yi Wang
1002689b937bSHsin-Yi Wang			mt6397_vtcxo_reg: ldo_vtcxo {
1003689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vtcxo";
1004689b937bSHsin-Yi Wang				regulator-name = "vtcxo";
1005689b937bSHsin-Yi Wang				regulator-always-on;
1006689b937bSHsin-Yi Wang			};
1007689b937bSHsin-Yi Wang
1008689b937bSHsin-Yi Wang			mt6397_va28_reg: ldo_va28 {
1009689b937bSHsin-Yi Wang				regulator-compatible = "ldo_va28";
1010689b937bSHsin-Yi Wang				regulator-name = "va28";
1011689b937bSHsin-Yi Wang			};
1012689b937bSHsin-Yi Wang
1013689b937bSHsin-Yi Wang			mt6397_vcama_reg: ldo_vcama {
1014689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vcama";
1015689b937bSHsin-Yi Wang				regulator-name = "vcama";
1016689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1017689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1018689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1019689b937bSHsin-Yi Wang			};
1020689b937bSHsin-Yi Wang
1021689b937bSHsin-Yi Wang			mt6397_vio28_reg: ldo_vio28 {
1022689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vio28";
1023689b937bSHsin-Yi Wang				regulator-name = "vio28";
1024689b937bSHsin-Yi Wang				regulator-always-on;
1025689b937bSHsin-Yi Wang			};
1026689b937bSHsin-Yi Wang
1027689b937bSHsin-Yi Wang			mt6397_vusb_reg: ldo_vusb {
1028689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vusb";
1029689b937bSHsin-Yi Wang				regulator-name = "vusb";
1030689b937bSHsin-Yi Wang			};
1031689b937bSHsin-Yi Wang
1032689b937bSHsin-Yi Wang			mt6397_vmc_reg: ldo_vmc {
1033689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vmc";
1034689b937bSHsin-Yi Wang				regulator-name = "vmc";
1035689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1036689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1037689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1038689b937bSHsin-Yi Wang			};
1039689b937bSHsin-Yi Wang
1040689b937bSHsin-Yi Wang			mt6397_vmch_reg: ldo_vmch {
1041689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vmch";
1042689b937bSHsin-Yi Wang				regulator-name = "vmch";
1043689b937bSHsin-Yi Wang				regulator-min-microvolt = <3000000>;
1044689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1045689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1046689b937bSHsin-Yi Wang			};
1047689b937bSHsin-Yi Wang
1048689b937bSHsin-Yi Wang			mt6397_vemc_3v3_reg: ldo_vemc3v3 {
1049689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vemc3v3";
1050689b937bSHsin-Yi Wang				regulator-name = "vemc_3v3";
1051689b937bSHsin-Yi Wang				regulator-min-microvolt = <3000000>;
1052689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1053689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1054689b937bSHsin-Yi Wang			};
1055689b937bSHsin-Yi Wang
1056689b937bSHsin-Yi Wang			mt6397_vgp1_reg: ldo_vgp1 {
1057689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp1";
1058689b937bSHsin-Yi Wang				regulator-name = "vcamd";
1059689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1060689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1061689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <240>;
1062689b937bSHsin-Yi Wang			};
1063689b937bSHsin-Yi Wang
1064689b937bSHsin-Yi Wang			mt6397_vgp2_reg: ldo_vgp2 {
1065689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp2";
1066689b937bSHsin-Yi Wang				regulator-name = "vcamio";
1067689b937bSHsin-Yi Wang				regulator-min-microvolt = <3300000>;
1068689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1069689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1070689b937bSHsin-Yi Wang			};
1071689b937bSHsin-Yi Wang
1072689b937bSHsin-Yi Wang			mt6397_vgp3_reg: ldo_vgp3 {
1073689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp3";
1074689b937bSHsin-Yi Wang				regulator-name = "vcamaf";
1075689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1076689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1077689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1078689b937bSHsin-Yi Wang			};
1079689b937bSHsin-Yi Wang
1080689b937bSHsin-Yi Wang			mt6397_vgp4_reg: ldo_vgp4 {
1081689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp4";
1082689b937bSHsin-Yi Wang				regulator-name = "vgp4";
1083689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
1084689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1085689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1086689b937bSHsin-Yi Wang			};
1087689b937bSHsin-Yi Wang
1088689b937bSHsin-Yi Wang			mt6397_vgp5_reg: ldo_vgp5 {
1089689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp5";
1090689b937bSHsin-Yi Wang				regulator-name = "vgp5";
1091689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
1092689b937bSHsin-Yi Wang				regulator-max-microvolt = <3000000>;
1093689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1094689b937bSHsin-Yi Wang			};
1095689b937bSHsin-Yi Wang
1096689b937bSHsin-Yi Wang			mt6397_vgp6_reg: ldo_vgp6 {
1097689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp6";
1098689b937bSHsin-Yi Wang				regulator-name = "vgp6";
1099689b937bSHsin-Yi Wang				regulator-min-microvolt = <3300000>;
1100689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1101689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1102689b937bSHsin-Yi Wang				regulator-always-on;
1103689b937bSHsin-Yi Wang			};
1104689b937bSHsin-Yi Wang
1105689b937bSHsin-Yi Wang			mt6397_vibr_reg: ldo_vibr {
1106689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vibr";
1107689b937bSHsin-Yi Wang				regulator-name = "vibr";
1108689b937bSHsin-Yi Wang				regulator-min-microvolt = <1300000>;
1109689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1110689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1111689b937bSHsin-Yi Wang			};
1112689b937bSHsin-Yi Wang		};
1113689b937bSHsin-Yi Wang
1114689b937bSHsin-Yi Wang		rtc: mt6397rtc {
1115689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-rtc";
1116689b937bSHsin-Yi Wang		};
1117689b937bSHsin-Yi Wang
1118689b937bSHsin-Yi Wang		syscfg_pctl_pmic: syscfg_pctl_pmic@c000 {
1119689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-pctl-pmic-syscfg",
1120689b937bSHsin-Yi Wang				     "syscon";
1121689b937bSHsin-Yi Wang			reg = <0 0x0000c000 0 0x0108>;
1122689b937bSHsin-Yi Wang		};
1123689b937bSHsin-Yi Wang	};
1124689b937bSHsin-Yi Wang};
1125689b937bSHsin-Yi Wang
1126689b937bSHsin-Yi Wang&spi {
1127689b937bSHsin-Yi Wang	pinctrl-names = "default";
1128689b937bSHsin-Yi Wang	pinctrl-0 = <&spi_pins_a>;
1129689b937bSHsin-Yi Wang	mediatek,pad-select = <1>;
1130689b937bSHsin-Yi Wang	status = "okay";
1131689b937bSHsin-Yi Wang	/* clients */
1132689b937bSHsin-Yi Wang	cros_ec: ec@0 {
1133689b937bSHsin-Yi Wang		compatible = "google,cros-ec-spi";
1134689b937bSHsin-Yi Wang		reg = <0x0>;
1135689b937bSHsin-Yi Wang		spi-max-frequency = <12000000>;
1136689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
1137689b937bSHsin-Yi Wang		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
1138689b937bSHsin-Yi Wang		google,cros-ec-spi-msg-delay = <500>;
1139689b937bSHsin-Yi Wang
1140689b937bSHsin-Yi Wang		i2c_tunnel: i2c-tunnel0 {
1141689b937bSHsin-Yi Wang			compatible = "google,cros-ec-i2c-tunnel";
1142689b937bSHsin-Yi Wang			google,remote-bus = <0>;
1143689b937bSHsin-Yi Wang			#address-cells = <1>;
1144689b937bSHsin-Yi Wang			#size-cells = <0>;
1145689b937bSHsin-Yi Wang
1146689b937bSHsin-Yi Wang			battery: sbs-battery@b {
1147689b937bSHsin-Yi Wang				compatible = "sbs,sbs-battery";
1148689b937bSHsin-Yi Wang				reg = <0xb>;
1149689b937bSHsin-Yi Wang				sbs,i2c-retry-count = <2>;
1150689b937bSHsin-Yi Wang				sbs,poll-retry-count = <1>;
1151689b937bSHsin-Yi Wang			};
1152689b937bSHsin-Yi Wang		};
1153689b937bSHsin-Yi Wang	};
1154689b937bSHsin-Yi Wang};
1155689b937bSHsin-Yi Wang
1156689b937bSHsin-Yi Wang&ssusb {
1157689b937bSHsin-Yi Wang	dr_mode = "host";
1158689b937bSHsin-Yi Wang	wakeup-source;
1159689b937bSHsin-Yi Wang	vusb33-supply = <&mt6397_vusb_reg>;
1160689b937bSHsin-Yi Wang	status = "okay";
1161689b937bSHsin-Yi Wang};
1162689b937bSHsin-Yi Wang
1163689b937bSHsin-Yi Wang&thermal {
1164689b937bSHsin-Yi Wang	bank0-supply = <&mt6397_vpca15_reg>;
1165689b937bSHsin-Yi Wang	bank1-supply = <&da9211_vcpu_reg>;
1166689b937bSHsin-Yi Wang};
1167689b937bSHsin-Yi Wang
1168689b937bSHsin-Yi Wang&uart0 {
1169689b937bSHsin-Yi Wang	status = "okay";
1170689b937bSHsin-Yi Wang};
1171689b937bSHsin-Yi Wang
1172689b937bSHsin-Yi Wang&usb_host {
1173689b937bSHsin-Yi Wang	pinctrl-names = "default";
1174689b937bSHsin-Yi Wang	pinctrl-0 = <&usb_pins>;
1175689b937bSHsin-Yi Wang	vusb33-supply = <&mt6397_vusb_reg>;
1176689b937bSHsin-Yi Wang	status = "okay";
1177689b937bSHsin-Yi Wang};
1178689b937bSHsin-Yi Wang
1179689b937bSHsin-Yi Wang#include <arm/cros-ec-keyboard.dtsi>
1180