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