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