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
56335d1603SKrzysztof 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>;
61*3a07e82eSKrzysztof Kozlowski			wakeup-source;
62689b937bSHsin-Yi Wang		};
63689b937bSHsin-Yi Wang
64335d1603SKrzysztof 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>;
69*3a07e82eSKrzysztof Kozlowski			wakeup-source;
70689b937bSHsin-Yi Wang		};
71689b937bSHsin-Yi Wang
72335d1603SKrzysztof 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>;
77*3a07e82eSKrzysztof Kozlowski			wakeup-source;
78689b937bSHsin-Yi Wang		};
79689b937bSHsin-Yi Wang
80335d1603SKrzysztof 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
86335d1603SKrzysztof 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_fixed_3v3: regulator1 {
94689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
95689b937bSHsin-Yi Wang		regulator-name = "PANEL_3V3";
96689b937bSHsin-Yi Wang		regulator-min-microvolt = <3300000>;
97689b937bSHsin-Yi Wang		regulator-max-microvolt = <3300000>;
98689b937bSHsin-Yi Wang		enable-active-high;
99689b937bSHsin-Yi Wang		gpio = <&pio 41 GPIO_ACTIVE_HIGH>;
100689b937bSHsin-Yi Wang		pinctrl-names = "default";
101689b937bSHsin-Yi Wang		pinctrl-0 = <&panel_fixed_pins>;
102689b937bSHsin-Yi Wang	};
103689b937bSHsin-Yi Wang
104689b937bSHsin-Yi Wang	ps8640_fixed_1v2: regulator2 {
105689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
106689b937bSHsin-Yi Wang		regulator-name = "PS8640_1V2";
107689b937bSHsin-Yi Wang		regulator-min-microvolt = <1200000>;
108689b937bSHsin-Yi Wang		regulator-max-microvolt = <1200000>;
109689b937bSHsin-Yi Wang		regulator-enable-ramp-delay = <2000>;
110689b937bSHsin-Yi Wang		enable-active-high;
111689b937bSHsin-Yi Wang		regulator-boot-on;
112689b937bSHsin-Yi Wang		gpio = <&pio 30 GPIO_ACTIVE_HIGH>;
113689b937bSHsin-Yi Wang		pinctrl-names = "default";
114689b937bSHsin-Yi Wang		pinctrl-0 = <&ps8640_fixed_pins>;
115689b937bSHsin-Yi Wang	};
116689b937bSHsin-Yi Wang
117689b937bSHsin-Yi Wang	sdio_fixed_3v3: fixedregulator0 {
118689b937bSHsin-Yi Wang		compatible = "regulator-fixed";
119689b937bSHsin-Yi Wang		regulator-name = "3V3";
120689b937bSHsin-Yi Wang		regulator-min-microvolt = <3300000>;
121689b937bSHsin-Yi Wang		regulator-max-microvolt = <3300000>;
122689b937bSHsin-Yi Wang		gpio = <&pio 85 GPIO_ACTIVE_HIGH>;
123689b937bSHsin-Yi Wang		pinctrl-names = "default";
124689b937bSHsin-Yi Wang		pinctrl-0 = <&sdio_fixed_3v3_pins>;
125689b937bSHsin-Yi Wang	};
126689b937bSHsin-Yi Wang
127689b937bSHsin-Yi Wang	sound: sound {
128689b937bSHsin-Yi Wang		compatible = "mediatek,mt8173-rt5650";
129689b937bSHsin-Yi Wang		mediatek,audio-codec = <&rt5650 &hdmi0>;
130689b937bSHsin-Yi Wang		mediatek,platform = <&afe>;
131689b937bSHsin-Yi Wang		pinctrl-names = "default";
132689b937bSHsin-Yi Wang		pinctrl-0 = <&aud_i2s2>;
133689b937bSHsin-Yi Wang
134689b937bSHsin-Yi Wang		mediatek,mclk = <1>;
135689b937bSHsin-Yi Wang		codec-capture {
136689b937bSHsin-Yi Wang			sound-dai = <&rt5650 1>;
137689b937bSHsin-Yi Wang		};
138689b937bSHsin-Yi Wang	};
139689b937bSHsin-Yi Wang
140689b937bSHsin-Yi Wang	hdmicon: connector {
141689b937bSHsin-Yi Wang		compatible = "hdmi-connector";
142689b937bSHsin-Yi Wang		label = "hdmi";
143689b937bSHsin-Yi Wang		type = "a";
144689b937bSHsin-Yi Wang		ddc-i2c-bus = <&hdmiddc0>;
145689b937bSHsin-Yi Wang
146689b937bSHsin-Yi Wang		port {
147689b937bSHsin-Yi Wang			hdmi_connector_in: endpoint {
148689b937bSHsin-Yi Wang				remote-endpoint = <&hdmi0_out>;
149689b937bSHsin-Yi Wang			};
150689b937bSHsin-Yi Wang		};
151689b937bSHsin-Yi Wang	};
1526ea46968SPin-yen Lin
1536ea46968SPin-yen Lin	watchdog {
1546ea46968SPin-yen Lin		compatible = "arm,smc-wdt";
1556ea46968SPin-yen Lin	};
1566ea46968SPin-yen Lin};
1576ea46968SPin-yen Lin
1586ea46968SPin-yen Lin/*
1596ea46968SPin-yen Lin * Disable the original MMIO watch dog and switch to the SMC watchdog, which
1606ea46968SPin-yen Lin * operates on the same MMIO.
1616ea46968SPin-yen Lin */
1626ea46968SPin-yen Lin&watchdog {
1636ea46968SPin-yen Lin	status = "disabled";
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		};
285c2d94f72SAngeloGioacchino Del Regno
286c2d94f72SAngeloGioacchino Del Regno		aux-bus {
287c2d94f72SAngeloGioacchino Del Regno			panel: panel {
288c2d94f72SAngeloGioacchino Del Regno				compatible = "lg,lp120up1";
289c2d94f72SAngeloGioacchino Del Regno				power-supply = <&panel_fixed_3v3>;
290c2d94f72SAngeloGioacchino Del Regno				backlight = <&backlight>;
291c2d94f72SAngeloGioacchino Del Regno
292c2d94f72SAngeloGioacchino Del Regno				port {
293c2d94f72SAngeloGioacchino Del Regno					panel_in: endpoint {
294c2d94f72SAngeloGioacchino Del Regno						remote-endpoint = <&ps8640_out>;
295c2d94f72SAngeloGioacchino Del Regno					};
296c2d94f72SAngeloGioacchino Del Regno				};
297c2d94f72SAngeloGioacchino Del Regno			};
298c2d94f72SAngeloGioacchino Del Regno		};
299689b937bSHsin-Yi Wang	};
300689b937bSHsin-Yi Wang};
301689b937bSHsin-Yi Wang
302689b937bSHsin-Yi Wang&i2c1 {
303689b937bSHsin-Yi Wang	clock-frequency = <1500000>;
304689b937bSHsin-Yi Wang	status = "okay";
305689b937bSHsin-Yi Wang
306689b937bSHsin-Yi Wang	da9211: da9211@68 {
307689b937bSHsin-Yi Wang		compatible = "dlg,da9211";
308689b937bSHsin-Yi Wang		reg = <0x68>;
309689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
310689b937bSHsin-Yi Wang		interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
311689b937bSHsin-Yi Wang
312689b937bSHsin-Yi Wang		regulators {
313689b937bSHsin-Yi Wang			da9211_vcpu_reg: BUCKA {
314689b937bSHsin-Yi Wang				regulator-name = "VBUCKA";
315689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
316689b937bSHsin-Yi Wang				regulator-max-microvolt = <1310000>;
317689b937bSHsin-Yi Wang				regulator-min-microamp = <2000000>;
318689b937bSHsin-Yi Wang				regulator-max-microamp = <4400000>;
319689b937bSHsin-Yi Wang				regulator-ramp-delay = <10000>;
320689b937bSHsin-Yi Wang				regulator-always-on;
3219d955478SDafna Hirschfeld				regulator-allowed-modes = <DA9211_BUCK_MODE_SYNC
3229d955478SDafna Hirschfeld							   DA9211_BUCK_MODE_AUTO>;
323689b937bSHsin-Yi Wang			};
324689b937bSHsin-Yi Wang
325689b937bSHsin-Yi Wang			da9211_vgpu_reg: BUCKB {
326689b937bSHsin-Yi Wang				regulator-name = "VBUCKB";
327689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
328689b937bSHsin-Yi Wang				regulator-max-microvolt = <1310000>;
329689b937bSHsin-Yi Wang				regulator-min-microamp = <2000000>;
330689b937bSHsin-Yi Wang				regulator-max-microamp = <3000000>;
331689b937bSHsin-Yi Wang				regulator-ramp-delay = <10000>;
332689b937bSHsin-Yi Wang			};
333689b937bSHsin-Yi Wang		};
334689b937bSHsin-Yi Wang	};
335689b937bSHsin-Yi Wang};
336689b937bSHsin-Yi Wang
337689b937bSHsin-Yi Wang&i2c2 {
338689b937bSHsin-Yi Wang	status = "okay";
339689b937bSHsin-Yi Wang
340689b937bSHsin-Yi Wang	tpm: tpm@20 {
341689b937bSHsin-Yi Wang		compatible = "infineon,slb9645tt";
342689b937bSHsin-Yi Wang		reg = <0x20>;
343689b937bSHsin-Yi Wang		powered-while-suspended;
344689b937bSHsin-Yi Wang	};
345689b937bSHsin-Yi Wang};
346689b937bSHsin-Yi Wang
347689b937bSHsin-Yi Wang&i2c3 {
348689b937bSHsin-Yi Wang	clock-frequency = <400000>;
349689b937bSHsin-Yi Wang	status = "okay";
350689b937bSHsin-Yi Wang
351689b937bSHsin-Yi Wang	touchscreen: touchscreen@10 {
352689b937bSHsin-Yi Wang		compatible = "elan,ekth3500";
353689b937bSHsin-Yi Wang		reg = <0x10>;
354689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
355689b937bSHsin-Yi Wang		interrupts = <88 IRQ_TYPE_LEVEL_LOW>;
356689b937bSHsin-Yi Wang	};
357689b937bSHsin-Yi Wang};
358689b937bSHsin-Yi Wang
359689b937bSHsin-Yi Wang&i2c4 {
360689b937bSHsin-Yi Wang	clock-frequency = <400000>;
361689b937bSHsin-Yi Wang	status = "okay";
362689b937bSHsin-Yi Wang	pinctrl-names = "default";
363689b937bSHsin-Yi Wang	pinctrl-0 = <&trackpad_irq>;
364689b937bSHsin-Yi Wang
365689b937bSHsin-Yi Wang	trackpad: trackpad@15 {
366689b937bSHsin-Yi Wang		compatible = "elan,ekth3000";
367689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
368689b937bSHsin-Yi Wang		interrupts = <117 IRQ_TYPE_LEVEL_LOW>;
369689b937bSHsin-Yi Wang		reg = <0x15>;
370689b937bSHsin-Yi Wang		vcc-supply = <&mt6397_vgp6_reg>;
371689b937bSHsin-Yi Wang		wakeup-source;
372689b937bSHsin-Yi Wang	};
373689b937bSHsin-Yi Wang};
374689b937bSHsin-Yi Wang
375689b937bSHsin-Yi Wang&mipi_tx0 {
376689b937bSHsin-Yi Wang	status = "okay";
377689b937bSHsin-Yi Wang};
378689b937bSHsin-Yi Wang
379689b937bSHsin-Yi Wang&mmc0 {
380689b937bSHsin-Yi Wang	status = "okay";
381689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
382689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc0_pins_default>;
383689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc0_pins_uhs>;
384689b937bSHsin-Yi Wang	bus-width = <8>;
385689b937bSHsin-Yi Wang	max-frequency = <200000000>;
386689b937bSHsin-Yi Wang	cap-mmc-highspeed;
387689b937bSHsin-Yi Wang	mmc-hs200-1_8v;
388689b937bSHsin-Yi Wang	mmc-hs400-1_8v;
389689b937bSHsin-Yi Wang	cap-mmc-hw-reset;
390689b937bSHsin-Yi Wang	hs400-ds-delay = <0x14015>;
391689b937bSHsin-Yi Wang	mediatek,hs200-cmd-int-delay = <30>;
392689b937bSHsin-Yi Wang	mediatek,hs400-cmd-int-delay = <14>;
393689b937bSHsin-Yi Wang	mediatek,hs400-cmd-resp-sel-rising;
394689b937bSHsin-Yi Wang	vmmc-supply = <&mt6397_vemc_3v3_reg>;
395689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vio18_reg>;
396689b937bSHsin-Yi Wang	assigned-clocks = <&topckgen CLK_TOP_MSDC50_0_SEL>;
397689b937bSHsin-Yi Wang	assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
398689b937bSHsin-Yi Wang	non-removable;
399689b937bSHsin-Yi Wang};
400689b937bSHsin-Yi Wang
401689b937bSHsin-Yi Wang&mmc1 {
402689b937bSHsin-Yi Wang	status = "okay";
403689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
404689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc1_pins_default>;
405689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc1_pins_uhs>;
406689b937bSHsin-Yi Wang	bus-width = <4>;
407689b937bSHsin-Yi Wang	max-frequency = <200000000>;
408689b937bSHsin-Yi Wang	cap-sd-highspeed;
409689b937bSHsin-Yi Wang	sd-uhs-sdr50;
410689b937bSHsin-Yi Wang	sd-uhs-sdr104;
411689b937bSHsin-Yi Wang	cd-gpios = <&pio 1 GPIO_ACTIVE_LOW>;
412689b937bSHsin-Yi Wang	vmmc-supply = <&mt6397_vmch_reg>;
413689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vmc_reg>;
414689b937bSHsin-Yi Wang};
415689b937bSHsin-Yi Wang
416689b937bSHsin-Yi Wang&mmc3 {
417689b937bSHsin-Yi Wang	status = "okay";
418689b937bSHsin-Yi Wang	pinctrl-names = "default", "state_uhs";
419689b937bSHsin-Yi Wang	pinctrl-0 = <&mmc3_pins_default>;
420689b937bSHsin-Yi Wang	pinctrl-1 = <&mmc3_pins_uhs>;
421689b937bSHsin-Yi Wang	bus-width = <4>;
422689b937bSHsin-Yi Wang	max-frequency = <200000000>;
423689b937bSHsin-Yi Wang	cap-sd-highspeed;
424689b937bSHsin-Yi Wang	sd-uhs-sdr50;
425689b937bSHsin-Yi Wang	sd-uhs-sdr104;
426689b937bSHsin-Yi Wang	keep-power-in-suspend;
427a5b87cdcSFabio Estevam	wakeup-source;
428689b937bSHsin-Yi Wang	cap-sdio-irq;
429689b937bSHsin-Yi Wang	vmmc-supply = <&sdio_fixed_3v3>;
430689b937bSHsin-Yi Wang	vqmmc-supply = <&mt6397_vgp3_reg>;
431689b937bSHsin-Yi Wang	non-removable;
432689b937bSHsin-Yi Wang	cap-power-off-card;
433689b937bSHsin-Yi Wang
434689b937bSHsin-Yi Wang	#address-cells = <1>;
435689b937bSHsin-Yi Wang	#size-cells = <0>;
436689b937bSHsin-Yi Wang
437689b937bSHsin-Yi Wang	btmrvl: btmrvl@2 {
438689b937bSHsin-Yi Wang		compatible = "marvell,sd8897-bt";
439689b937bSHsin-Yi Wang		reg = <2>;
440689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
441689b937bSHsin-Yi Wang		interrupts = <119 IRQ_TYPE_LEVEL_LOW>;
442689b937bSHsin-Yi Wang		marvell,wakeup-pin = /bits/ 16 <0x0d>;
443689b937bSHsin-Yi Wang		marvell,wakeup-gap-ms = /bits/ 16 <0x64>;
444689b937bSHsin-Yi Wang	};
445689b937bSHsin-Yi Wang
446689b937bSHsin-Yi Wang	mwifiex: mwifiex@1 {
447689b937bSHsin-Yi Wang		compatible = "marvell,sd8897";
448689b937bSHsin-Yi Wang		reg = <1>;
449689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
450689b937bSHsin-Yi Wang		interrupts = <38 IRQ_TYPE_LEVEL_LOW>;
451689b937bSHsin-Yi Wang		marvell,wakeup-pin = <3>;
452689b937bSHsin-Yi Wang	};
453689b937bSHsin-Yi Wang};
454689b937bSHsin-Yi Wang
455689b937bSHsin-Yi Wang&nor_flash {
456689b937bSHsin-Yi Wang	status = "okay";
457689b937bSHsin-Yi Wang	pinctrl-names = "default";
458689b937bSHsin-Yi Wang	pinctrl-0 = <&nor_gpio1_pins>;
4591276be23SHsin-Yi Wang
460689b937bSHsin-Yi Wang	flash@0 {
461689b937bSHsin-Yi Wang		compatible = "jedec,spi-nor";
462689b937bSHsin-Yi Wang		reg = <0>;
4631276be23SHsin-Yi Wang		spi-max-frequency = <50000000>;
464689b937bSHsin-Yi Wang	};
465689b937bSHsin-Yi Wang};
466689b937bSHsin-Yi Wang
467689b937bSHsin-Yi Wang&pio {
468689b937bSHsin-Yi Wang	gpio-line-names = "EC_INT_1V8",
469689b937bSHsin-Yi Wang			  "SD_CD_L",
470689b937bSHsin-Yi Wang			  "ALC5514_IRQ",
471689b937bSHsin-Yi Wang			  "ALC5650_IRQ",
472689b937bSHsin-Yi Wang			  /*
473689b937bSHsin-Yi Wang			   * AP_FLASH_WP_L is crossystem ABI. Schematics
474689b937bSHsin-Yi Wang			   * call it SFWP_B.
475689b937bSHsin-Yi Wang			   */
476689b937bSHsin-Yi Wang			  "AP_FLASH_WP_L",
477689b937bSHsin-Yi Wang			  "SFIN",
478689b937bSHsin-Yi Wang			  "SFCS0",
479689b937bSHsin-Yi Wang			  "SFHOLD",
480689b937bSHsin-Yi Wang			  "SFOUT",
481689b937bSHsin-Yi Wang			  "SFCK",
482689b937bSHsin-Yi Wang			  "WRAP_EVENT_S_EINT10",
483689b937bSHsin-Yi Wang			  "PMU_INT",
484689b937bSHsin-Yi Wang			  "I2S2_WS_ALC5650",
485689b937bSHsin-Yi Wang			  "I2S2_BCK_ALC5650",
486689b937bSHsin-Yi Wang			  "PWR_BTN_1V8",
487689b937bSHsin-Yi Wang			  "DA9212_IRQ",
488689b937bSHsin-Yi Wang			  "IDDIG",
489689b937bSHsin-Yi Wang			  "WATCHDOG",
490689b937bSHsin-Yi Wang			  "CEC",
491689b937bSHsin-Yi Wang			  "HDMISCK",
492689b937bSHsin-Yi Wang			  "HDMISD",
493689b937bSHsin-Yi Wang			  "HTPLG",
494689b937bSHsin-Yi Wang			  "MSDC3_DAT0",
495689b937bSHsin-Yi Wang			  "MSDC3_DAT1",
496689b937bSHsin-Yi Wang			  "MSDC3_DAT2",
497689b937bSHsin-Yi Wang			  "MSDC3_DAT3",
498689b937bSHsin-Yi Wang			  "MSDC3_CLK",
499689b937bSHsin-Yi Wang			  "MSDC3_CMD",
500689b937bSHsin-Yi Wang			  "USB_C0_OC_FLAGB",
501689b937bSHsin-Yi Wang			  "USBA_OC1_L",
502689b937bSHsin-Yi Wang			  "PS8640_1V2_ENABLE",
503689b937bSHsin-Yi Wang			  "THERM_ALERT_N",
504689b937bSHsin-Yi Wang			  "PANEL_LCD_POWER_EN",
505689b937bSHsin-Yi Wang			  "ANX7688_CHIP_PD_C",
506689b937bSHsin-Yi Wang			  "EC_IN_RW_1V8",
507689b937bSHsin-Yi Wang			  "ANX7688_1V_EN_C",
508689b937bSHsin-Yi Wang			  "USB_DP_HPD_C",
509689b937bSHsin-Yi Wang			  "TPM_DAVINT_N",
510689b937bSHsin-Yi Wang			  "MARVELL8897_IRQ",
511689b937bSHsin-Yi Wang			  "EN_USB_A0_PWR",
512689b937bSHsin-Yi Wang			  "USBA_A0_OC_L",
513689b937bSHsin-Yi Wang			  "EN_PP3300_DX_EDP",
514689b937bSHsin-Yi Wang			  "",
515689b937bSHsin-Yi Wang			  "SOC_I2C2_1V8_SDA_400K",
516689b937bSHsin-Yi Wang			  "SOC_I2C2_1V8_SCL_400K",
517689b937bSHsin-Yi Wang			  "SOC_I2C0_1V8_SDA_400K",
518689b937bSHsin-Yi Wang			  "SOC_I2C0_1V8_SCL_400K",
519689b937bSHsin-Yi Wang			  "EMMC_ID1",
520689b937bSHsin-Yi Wang			  "EMMC_ID0",
521689b937bSHsin-Yi Wang			  "MEM_CONFIG3",
522689b937bSHsin-Yi Wang			  "EMMC_ID2",
523689b937bSHsin-Yi Wang			  "MEM_CONFIG1",
524689b937bSHsin-Yi Wang			  "MEM_CONFIG2",
525689b937bSHsin-Yi Wang			  "BRD_ID2",
526689b937bSHsin-Yi Wang			  "MEM_CONFIG0",
527689b937bSHsin-Yi Wang			  "BRD_ID0",
528689b937bSHsin-Yi Wang			  "BRD_ID1",
529689b937bSHsin-Yi Wang			  "EMMC_DAT0",
530689b937bSHsin-Yi Wang			  "EMMC_DAT1",
531689b937bSHsin-Yi Wang			  "EMMC_DAT2",
532689b937bSHsin-Yi Wang			  "EMMC_DAT3",
533689b937bSHsin-Yi Wang			  "EMMC_DAT4",
534689b937bSHsin-Yi Wang			  "EMMC_DAT5",
535689b937bSHsin-Yi Wang			  "EMMC_DAT6",
536689b937bSHsin-Yi Wang			  "EMMC_DAT7",
537689b937bSHsin-Yi Wang			  "EMMC_CLK",
538689b937bSHsin-Yi Wang			  "EMMC_CMD",
539689b937bSHsin-Yi Wang			  "EMMC_RCLK",
540689b937bSHsin-Yi Wang			  "PLT_RST_L",
541689b937bSHsin-Yi Wang			  "LID_OPEN_1V8_L",
542689b937bSHsin-Yi Wang			  "AUDIO_SPI_MISO_R",
543689b937bSHsin-Yi Wang			  "",
544689b937bSHsin-Yi Wang			  "AC_OK_1V8",
545689b937bSHsin-Yi Wang			  "SD_DATA0",
546689b937bSHsin-Yi Wang			  "SD_DATA1",
547689b937bSHsin-Yi Wang			  "SD_DATA2",
548689b937bSHsin-Yi Wang			  "SD_DATA3",
549689b937bSHsin-Yi Wang			  "SD_CLK",
550689b937bSHsin-Yi Wang			  "SD_CMD",
551689b937bSHsin-Yi Wang			  "PWRAP_SPI0_MI",
552689b937bSHsin-Yi Wang			  "PWRAP_SPI0_MO",
553689b937bSHsin-Yi Wang			  "PWRAP_SPI0_CK",
554689b937bSHsin-Yi Wang			  "PWRAP_SPI0_CSN",
555689b937bSHsin-Yi Wang			  "",
556689b937bSHsin-Yi Wang			  "",
557689b937bSHsin-Yi Wang			  "WIFI_PDN",
558689b937bSHsin-Yi Wang			  "RTC32K_1V8",
559689b937bSHsin-Yi Wang			  "DISP_PWM0",
560689b937bSHsin-Yi Wang			  "TOUCHSCREEN_INT_L",
561689b937bSHsin-Yi Wang			  "",
562689b937bSHsin-Yi Wang			  "SRCLKENA0",
563689b937bSHsin-Yi Wang			  "SRCLKENA1",
564689b937bSHsin-Yi Wang			  "PS8640_MODE_CONF",
565689b937bSHsin-Yi Wang			  "TOUCHSCREEN_RESET_R",
566689b937bSHsin-Yi Wang			  "PLATFORM_PROCHOT_L",
567689b937bSHsin-Yi Wang			  "PANEL_POWER_EN",
568689b937bSHsin-Yi Wang			  "REC_MODE_L",
569689b937bSHsin-Yi Wang			  "EC_FW_UPDATE_L",
570689b937bSHsin-Yi Wang			  "ACCEL2_INT_L",
571689b937bSHsin-Yi Wang			  "HDMI_DP_INT",
572689b937bSHsin-Yi Wang			  "ACCELGYRO3_INT_L",
573689b937bSHsin-Yi Wang			  "ACCELGYRO4_INT_L",
574689b937bSHsin-Yi Wang			  "SPI_EC_CLK",
575689b937bSHsin-Yi Wang			  "SPI_EC_MI",
576689b937bSHsin-Yi Wang			  "SPI_EC_MO",
577689b937bSHsin-Yi Wang			  "SPI_EC_CSN",
578689b937bSHsin-Yi Wang			  "SOC_I2C3_1V8_SDA_400K",
579689b937bSHsin-Yi Wang			  "SOC_I2C3_1V8_SCL_400K",
580689b937bSHsin-Yi Wang			  "",
581689b937bSHsin-Yi Wang			  "",
582689b937bSHsin-Yi Wang			  "",
583689b937bSHsin-Yi Wang			  "",
584689b937bSHsin-Yi Wang			  "",
585689b937bSHsin-Yi Wang			  "",
586689b937bSHsin-Yi Wang			  "",
587689b937bSHsin-Yi Wang			  "PS8640_SYSRSTN_1V8",
588689b937bSHsin-Yi Wang			  "APIN_MAX98090_DOUT2",
589689b937bSHsin-Yi Wang			  "TP_INT_1V8_L_R",
590689b937bSHsin-Yi Wang			  "RST_USB_HUB_R",
591689b937bSHsin-Yi Wang			  "BT_WAKE_L",
592689b937bSHsin-Yi Wang			  "ACCEL1_INT_L",
593689b937bSHsin-Yi Wang			  "TABLET_MODE_L",
594689b937bSHsin-Yi Wang			  "",
595689b937bSHsin-Yi Wang			  "V_UP_IN_L_R",
596689b937bSHsin-Yi Wang			  "V_DOWN_IN_L_R",
597689b937bSHsin-Yi Wang			  "SOC_I2C1_1V8_SDA_1M",
598689b937bSHsin-Yi Wang			  "SOC_I2C1_1V8_SCL_1M",
599689b937bSHsin-Yi Wang			  "PS8640_PDN_1V8",
600689b937bSHsin-Yi Wang			  "MAX98090_LRCLK",
601689b937bSHsin-Yi Wang			  "MAX98090_BCLK",
602689b937bSHsin-Yi Wang			  "MAX98090_MCLK",
603689b937bSHsin-Yi Wang			  "APOUT_MAX98090_DIN",
604689b937bSHsin-Yi Wang			  "APIN_MAX98090_DOUT",
605689b937bSHsin-Yi Wang			  "SOC_I2C4_1V8_SDA_400K",
606689b937bSHsin-Yi Wang			  "SOC_I2C4_1V8_SCL_400K";
607689b937bSHsin-Yi Wang
608689b937bSHsin-Yi Wang	aud_i2s2: aud_i2s2 {
609689b937bSHsin-Yi Wang		pins1 {
610689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_128_I2S0_LRCK__FUNC_I2S1_WS>,
611689b937bSHsin-Yi Wang				 <MT8173_PIN_129_I2S0_BCK__FUNC_I2S1_BCK>,
612689b937bSHsin-Yi Wang				 <MT8173_PIN_130_I2S0_MCK__FUNC_I2S1_MCK>,
613689b937bSHsin-Yi Wang				 <MT8173_PIN_131_I2S0_DATA0__FUNC_I2S1_DO_1>,
614689b937bSHsin-Yi Wang				 <MT8173_PIN_12_EINT12__FUNC_I2S2_WS>,
615689b937bSHsin-Yi Wang				 <MT8173_PIN_13_EINT13__FUNC_I2S2_BCK>,
616689b937bSHsin-Yi Wang				 <MT8173_PIN_132_I2S0_DATA1__FUNC_I2S2_DI_2>;
617689b937bSHsin-Yi Wang			bias-pull-down;
618689b937bSHsin-Yi Wang		};
619689b937bSHsin-Yi Wang	};
620689b937bSHsin-Yi Wang
621689b937bSHsin-Yi Wang	bl_fixed_pins: bl_fixed_pins {
622689b937bSHsin-Yi Wang		pins1 {
623689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_32_UTXD2__FUNC_GPIO32>;
624689b937bSHsin-Yi Wang			output-low;
625689b937bSHsin-Yi Wang		};
626689b937bSHsin-Yi Wang	};
627689b937bSHsin-Yi Wang
628689b937bSHsin-Yi Wang	bt_wake_pins: bt_wake_pins {
629689b937bSHsin-Yi Wang		pins1 {
630689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_119_KPROW0__FUNC_GPIO119>;
631689b937bSHsin-Yi Wang			bias-pull-up;
632689b937bSHsin-Yi Wang		};
633689b937bSHsin-Yi Wang	};
634689b937bSHsin-Yi Wang
635689b937bSHsin-Yi Wang	disp_pwm0_pins: disp_pwm0_pins {
636689b937bSHsin-Yi Wang		pins1 {
637689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_87_DISP_PWM0__FUNC_DISP_PWM0>;
638689b937bSHsin-Yi Wang			output-low;
639689b937bSHsin-Yi Wang		};
640689b937bSHsin-Yi Wang	};
641689b937bSHsin-Yi Wang
642689b937bSHsin-Yi Wang	gpio_keys_pins: gpio_keys_pins {
643689b937bSHsin-Yi Wang		volume_pins {
644689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_123_KPCOL1__FUNC_GPIO123>,
645689b937bSHsin-Yi Wang				 <MT8173_PIN_124_KPCOL2__FUNC_GPIO124>;
646689b937bSHsin-Yi Wang			bias-pull-up;
647689b937bSHsin-Yi Wang		};
648689b937bSHsin-Yi Wang
649689b937bSHsin-Yi Wang		tablet_mode_pins {
650689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_121_KPROW2__FUNC_GPIO121>;
651689b937bSHsin-Yi Wang			bias-pull-up;
652689b937bSHsin-Yi Wang		};
653689b937bSHsin-Yi Wang	};
654689b937bSHsin-Yi Wang
655689b937bSHsin-Yi Wang	hdmi_mux_pins: hdmi_mux_pins {
656689b937bSHsin-Yi Wang		pins1 {
657689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_36_DAISYNC__FUNC_GPIO36>;
658689b937bSHsin-Yi Wang		};
659689b937bSHsin-Yi Wang	};
660689b937bSHsin-Yi Wang
661689b937bSHsin-Yi Wang	i2c1_pins_a: i2c1 {
662689b937bSHsin-Yi Wang		da9211_pins {
663689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_15_EINT15__FUNC_GPIO15>;
664689b937bSHsin-Yi Wang			bias-pull-up;
665689b937bSHsin-Yi Wang		};
666689b937bSHsin-Yi Wang	};
667689b937bSHsin-Yi Wang
668689b937bSHsin-Yi Wang	mmc0_pins_default: mmc0default {
669689b937bSHsin-Yi Wang		pins_cmd_dat {
670689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
671689b937bSHsin-Yi Wang				 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
672689b937bSHsin-Yi Wang				 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
673689b937bSHsin-Yi Wang				 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
674689b937bSHsin-Yi Wang				 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
675689b937bSHsin-Yi Wang				 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
676689b937bSHsin-Yi Wang				 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
677689b937bSHsin-Yi Wang				 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
678689b937bSHsin-Yi Wang				 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
679689b937bSHsin-Yi Wang			bias-pull-up;
680689b937bSHsin-Yi Wang		};
681689b937bSHsin-Yi Wang
682689b937bSHsin-Yi Wang		pins_clk {
683689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
684689b937bSHsin-Yi Wang			bias-pull-down;
685689b937bSHsin-Yi Wang		};
686689b937bSHsin-Yi Wang
687689b937bSHsin-Yi Wang		pins_rst {
688689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
689689b937bSHsin-Yi Wang			bias-pull-up;
690689b937bSHsin-Yi Wang		};
691689b937bSHsin-Yi Wang	};
692689b937bSHsin-Yi Wang
693689b937bSHsin-Yi Wang	mmc1_pins_default: mmc1default {
694689b937bSHsin-Yi Wang		pins_cmd_dat {
695689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
696689b937bSHsin-Yi Wang				 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
697689b937bSHsin-Yi Wang				 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
698689b937bSHsin-Yi Wang				 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
699689b937bSHsin-Yi Wang				 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
700689b937bSHsin-Yi Wang			input-enable;
701689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
702689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
703689b937bSHsin-Yi Wang		};
704689b937bSHsin-Yi Wang
705689b937bSHsin-Yi Wang		pins_clk {
706689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
707689b937bSHsin-Yi Wang			bias-pull-down;
708689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
709689b937bSHsin-Yi Wang		};
710689b937bSHsin-Yi Wang
711689b937bSHsin-Yi Wang		pins_insert {
712689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_1_EINT1__FUNC_GPIO1>;
713689b937bSHsin-Yi Wang			bias-pull-up;
714689b937bSHsin-Yi Wang		};
715689b937bSHsin-Yi Wang	};
716689b937bSHsin-Yi Wang
717689b937bSHsin-Yi Wang	mmc3_pins_default: mmc3default {
718689b937bSHsin-Yi Wang		pins_dat {
719689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_22_MSDC3_DAT0__FUNC_MSDC3_DAT0>,
720689b937bSHsin-Yi Wang				 <MT8173_PIN_23_MSDC3_DAT1__FUNC_MSDC3_DAT1>,
721689b937bSHsin-Yi Wang				 <MT8173_PIN_24_MSDC3_DAT2__FUNC_MSDC3_DAT2>,
722689b937bSHsin-Yi Wang				 <MT8173_PIN_25_MSDC3_DAT3__FUNC_MSDC3_DAT3>;
723689b937bSHsin-Yi Wang			input-enable;
724689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
725689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
726689b937bSHsin-Yi Wang		};
727689b937bSHsin-Yi Wang
728689b937bSHsin-Yi Wang		pins_cmd {
729689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_27_MSDC3_CMD__FUNC_MSDC3_CMD>;
730689b937bSHsin-Yi Wang			input-enable;
731689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
732689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
733689b937bSHsin-Yi Wang		};
734689b937bSHsin-Yi Wang
735689b937bSHsin-Yi Wang		pins_clk {
736689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_26_MSDC3_CLK__FUNC_MSDC3_CLK>;
737689b937bSHsin-Yi Wang			bias-pull-down;
738689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
739689b937bSHsin-Yi Wang		};
740689b937bSHsin-Yi Wang	};
741689b937bSHsin-Yi Wang
742689b937bSHsin-Yi Wang	mmc0_pins_uhs: mmc0 {
743689b937bSHsin-Yi Wang		pins_cmd_dat {
744689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
745689b937bSHsin-Yi Wang				 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
746689b937bSHsin-Yi Wang				 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
747689b937bSHsin-Yi Wang				 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
748689b937bSHsin-Yi Wang				 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
749689b937bSHsin-Yi Wang				 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
750689b937bSHsin-Yi Wang				 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
751689b937bSHsin-Yi Wang				 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
752689b937bSHsin-Yi Wang				 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
753689b937bSHsin-Yi Wang			input-enable;
754689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
755689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
756689b937bSHsin-Yi Wang		};
757689b937bSHsin-Yi Wang
758689b937bSHsin-Yi Wang		pins_clk {
759689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
760689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
761689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
762689b937bSHsin-Yi Wang		};
763689b937bSHsin-Yi Wang
764689b937bSHsin-Yi Wang		pins_ds {
765689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_67_MSDC0_DSL__FUNC_MSDC0_DSL>;
766689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_10mA>;
767689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
768689b937bSHsin-Yi Wang		};
769689b937bSHsin-Yi Wang
770689b937bSHsin-Yi Wang		pins_rst {
771689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
772689b937bSHsin-Yi Wang			bias-pull-up;
773689b937bSHsin-Yi Wang		};
774689b937bSHsin-Yi Wang	};
775689b937bSHsin-Yi Wang
776689b937bSHsin-Yi Wang	mmc1_pins_uhs: mmc1 {
777689b937bSHsin-Yi Wang		pins_cmd_dat {
778689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
779689b937bSHsin-Yi Wang				 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
780689b937bSHsin-Yi Wang				 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
781689b937bSHsin-Yi Wang				 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
782689b937bSHsin-Yi Wang				 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
783689b937bSHsin-Yi Wang			input-enable;
784689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_6mA>;
785689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
786689b937bSHsin-Yi Wang		};
787689b937bSHsin-Yi Wang
788689b937bSHsin-Yi Wang		pins_clk {
789689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
790689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
791689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
792689b937bSHsin-Yi Wang		};
793689b937bSHsin-Yi Wang	};
794689b937bSHsin-Yi Wang
795689b937bSHsin-Yi Wang	mmc3_pins_uhs: mmc3 {
796689b937bSHsin-Yi Wang		pins_dat {
797689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_22_MSDC3_DAT0__FUNC_MSDC3_DAT0>,
798689b937bSHsin-Yi Wang				 <MT8173_PIN_23_MSDC3_DAT1__FUNC_MSDC3_DAT1>,
799689b937bSHsin-Yi Wang				 <MT8173_PIN_24_MSDC3_DAT2__FUNC_MSDC3_DAT2>,
800689b937bSHsin-Yi Wang				 <MT8173_PIN_25_MSDC3_DAT3__FUNC_MSDC3_DAT3>;
801689b937bSHsin-Yi Wang			input-enable;
802689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
803689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
804689b937bSHsin-Yi Wang		};
805689b937bSHsin-Yi Wang
806689b937bSHsin-Yi Wang		pins_cmd {
807689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_27_MSDC3_CMD__FUNC_MSDC3_CMD>;
808689b937bSHsin-Yi Wang			input-enable;
809689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
810689b937bSHsin-Yi Wang			bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
811689b937bSHsin-Yi Wang		};
812689b937bSHsin-Yi Wang
813689b937bSHsin-Yi Wang		pins_clk {
814689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_26_MSDC3_CLK__FUNC_MSDC3_CLK>;
815689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_8mA>;
816689b937bSHsin-Yi Wang			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
817689b937bSHsin-Yi Wang		};
818689b937bSHsin-Yi Wang	};
819689b937bSHsin-Yi Wang
820689b937bSHsin-Yi Wang	nor_gpio1_pins: nor {
821689b937bSHsin-Yi Wang		pins1 {
822689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_6_EINT6__FUNC_SFCS0>,
823689b937bSHsin-Yi Wang				 <MT8173_PIN_7_EINT7__FUNC_SFHOLD>,
824689b937bSHsin-Yi Wang				 <MT8173_PIN_8_EINT8__FUNC_SFIN>;
825689b937bSHsin-Yi Wang			input-enable;
826689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
827689b937bSHsin-Yi Wang			bias-pull-up;
828689b937bSHsin-Yi Wang		};
829689b937bSHsin-Yi Wang
830689b937bSHsin-Yi Wang		pins2 {
831689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_5_EINT5__FUNC_SFOUT>;
832689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
833689b937bSHsin-Yi Wang			bias-pull-up;
834689b937bSHsin-Yi Wang		};
835689b937bSHsin-Yi Wang
836689b937bSHsin-Yi Wang		pins_clk {
837689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_9_EINT9__FUNC_SFCK>;
838689b937bSHsin-Yi Wang			input-enable;
839689b937bSHsin-Yi Wang			drive-strength = <MTK_DRIVE_4mA>;
840689b937bSHsin-Yi Wang			bias-pull-up;
841689b937bSHsin-Yi Wang		};
842689b937bSHsin-Yi Wang	};
843689b937bSHsin-Yi Wang
84454337a96SAngeloGioacchino Del Regno	panel_backlight_en_pins: panel_backlight_en_pins {
84554337a96SAngeloGioacchino Del Regno		pins1 {
84654337a96SAngeloGioacchino Del Regno			pinmux = <MT8173_PIN_95_PCM_TX__FUNC_GPIO95>;
84754337a96SAngeloGioacchino Del Regno		};
84854337a96SAngeloGioacchino Del Regno	};
84954337a96SAngeloGioacchino Del Regno
850689b937bSHsin-Yi Wang	panel_fixed_pins: panel_fixed_pins {
851689b937bSHsin-Yi Wang		pins1 {
852689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_41_CMMCLK__FUNC_GPIO41>;
853689b937bSHsin-Yi Wang		};
854689b937bSHsin-Yi Wang	};
855689b937bSHsin-Yi Wang
856689b937bSHsin-Yi Wang	ps8640_pins: ps8640_pins {
857689b937bSHsin-Yi Wang		pins1 {
858689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_92_PCM_CLK__FUNC_GPIO92>,
859689b937bSHsin-Yi Wang				 <MT8173_PIN_115_URTS0__FUNC_GPIO115>,
860689b937bSHsin-Yi Wang				 <MT8173_PIN_127_LCM_RST__FUNC_GPIO127>;
861689b937bSHsin-Yi Wang		};
862689b937bSHsin-Yi Wang	};
863689b937bSHsin-Yi Wang
864689b937bSHsin-Yi Wang	ps8640_fixed_pins: ps8640_fixed_pins {
865689b937bSHsin-Yi Wang		pins1 {
866689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_30_URTS2__FUNC_GPIO30>;
867689b937bSHsin-Yi Wang		};
868689b937bSHsin-Yi Wang	};
869689b937bSHsin-Yi Wang
870689b937bSHsin-Yi Wang	rt5650_irq: rt5650_irq {
871689b937bSHsin-Yi Wang		pins1 {
872689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_3_EINT3__FUNC_GPIO3>;
873689b937bSHsin-Yi Wang			bias-pull-down;
874689b937bSHsin-Yi Wang		};
875689b937bSHsin-Yi Wang	};
876689b937bSHsin-Yi Wang
877689b937bSHsin-Yi Wang	sdio_fixed_3v3_pins: sdio_fixed_3v3_pins {
878689b937bSHsin-Yi Wang		pins1 {
879689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_85_AUD_DAT_MOSI__FUNC_GPIO85>;
880689b937bSHsin-Yi Wang			output-low;
881689b937bSHsin-Yi Wang		};
882689b937bSHsin-Yi Wang	};
883689b937bSHsin-Yi Wang
884689b937bSHsin-Yi Wang	spi_pins_a: spi1 {
885689b937bSHsin-Yi Wang		pins1 {
886689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_0_EINT0__FUNC_GPIO0>;
887689b937bSHsin-Yi Wang			bias-pull-up;
888689b937bSHsin-Yi Wang		};
889689b937bSHsin-Yi Wang
890689b937bSHsin-Yi Wang		pins_spi {
891689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_102_MSDC2_DAT2__FUNC_SPI_CK_1_>,
892689b937bSHsin-Yi Wang				 <MT8173_PIN_103_MSDC2_DAT3__FUNC_SPI_MI_1_>,
893689b937bSHsin-Yi Wang				 <MT8173_PIN_104_MSDC2_CLK__FUNC_SPI_MO_1_>,
894689b937bSHsin-Yi Wang				 <MT8173_PIN_105_MSDC2_CMD__FUNC_SPI_CS_1_>;
895689b937bSHsin-Yi Wang			bias-disable;
896689b937bSHsin-Yi Wang		};
897689b937bSHsin-Yi Wang	};
898689b937bSHsin-Yi Wang
899689b937bSHsin-Yi Wang	trackpad_irq: trackpad_irq {
900689b937bSHsin-Yi Wang		pins1 {
901689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_117_URXD3__FUNC_GPIO117>;
902689b937bSHsin-Yi Wang			input-enable;
903689b937bSHsin-Yi Wang			bias-pull-up;
904689b937bSHsin-Yi Wang		};
905689b937bSHsin-Yi Wang	};
906689b937bSHsin-Yi Wang
907689b937bSHsin-Yi Wang	usb_pins: usb {
908689b937bSHsin-Yi Wang		pins1 {
909689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_101_MSDC2_DAT1__FUNC_GPIO101>;
910689b937bSHsin-Yi Wang			output-high;
911689b937bSHsin-Yi Wang			bias-disable;
912689b937bSHsin-Yi Wang		};
913689b937bSHsin-Yi Wang	};
914689b937bSHsin-Yi Wang
915689b937bSHsin-Yi Wang	wifi_wake_pins: wifi_wake_pins {
916689b937bSHsin-Yi Wang		pins1 {
917689b937bSHsin-Yi Wang			pinmux = <MT8173_PIN_38_CONN_RST__FUNC_GPIO38>;
918689b937bSHsin-Yi Wang			bias-pull-up;
919689b937bSHsin-Yi Wang		};
920689b937bSHsin-Yi Wang	};
921689b937bSHsin-Yi Wang};
922689b937bSHsin-Yi Wang
923689b937bSHsin-Yi Wang&pwm0 {
92408c40de8SAngeloGioacchino Del Regno	pinctrl-names = "default";
92508c40de8SAngeloGioacchino Del Regno	pinctrl-0 = <&disp_pwm0_pins>;
926689b937bSHsin-Yi Wang	status = "okay";
927689b937bSHsin-Yi Wang};
928689b937bSHsin-Yi Wang
929689b937bSHsin-Yi Wang&pwrap {
9302d812e9eSAlexandre Mergnat	pmic: pmic {
931689b937bSHsin-Yi Wang		compatible = "mediatek,mt6397";
932689b937bSHsin-Yi Wang		#address-cells = <1>;
933689b937bSHsin-Yi Wang		#size-cells = <1>;
934689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
935689b937bSHsin-Yi Wang		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
936689b937bSHsin-Yi Wang		interrupt-controller;
937689b937bSHsin-Yi Wang		#interrupt-cells = <2>;
938689b937bSHsin-Yi Wang
939689b937bSHsin-Yi Wang		clock: mt6397clock {
940689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-clk";
941689b937bSHsin-Yi Wang			#clock-cells = <1>;
942689b937bSHsin-Yi Wang		};
943689b937bSHsin-Yi Wang
944689b937bSHsin-Yi Wang		pio6397: pinctrl {
945689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-pinctrl";
946689b937bSHsin-Yi Wang			gpio-controller;
947689b937bSHsin-Yi Wang			#gpio-cells = <2>;
948689b937bSHsin-Yi Wang		};
949689b937bSHsin-Yi Wang
950689b937bSHsin-Yi Wang		regulator: mt6397regulator {
951689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-regulator";
952689b937bSHsin-Yi Wang
953689b937bSHsin-Yi Wang			mt6397_vpca15_reg: buck_vpca15 {
954689b937bSHsin-Yi Wang				regulator-compatible = "buck_vpca15";
955689b937bSHsin-Yi Wang				regulator-name = "vpca15";
956689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
957689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
958689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
959689b937bSHsin-Yi Wang				regulator-always-on;
960689b937bSHsin-Yi Wang				regulator-allowed-modes = <0 1>;
961689b937bSHsin-Yi Wang			};
962689b937bSHsin-Yi Wang
963689b937bSHsin-Yi Wang			mt6397_vpca7_reg: buck_vpca7 {
964689b937bSHsin-Yi Wang				regulator-compatible = "buck_vpca7";
965689b937bSHsin-Yi Wang				regulator-name = "vpca7";
966689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
967689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
968689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
969689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <115>;
970689b937bSHsin-Yi Wang				regulator-always-on;
971689b937bSHsin-Yi Wang			};
972689b937bSHsin-Yi Wang
973689b937bSHsin-Yi Wang			mt6397_vsramca15_reg: buck_vsramca15 {
974689b937bSHsin-Yi Wang				regulator-compatible = "buck_vsramca15";
975689b937bSHsin-Yi Wang				regulator-name = "vsramca15";
976689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
977689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
978689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
979689b937bSHsin-Yi Wang				regulator-always-on;
980689b937bSHsin-Yi Wang			};
981689b937bSHsin-Yi Wang
982689b937bSHsin-Yi Wang			mt6397_vsramca7_reg: buck_vsramca7 {
983689b937bSHsin-Yi Wang				regulator-compatible = "buck_vsramca7";
984689b937bSHsin-Yi Wang				regulator-name = "vsramca7";
985689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
986689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
987689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
988689b937bSHsin-Yi Wang				regulator-always-on;
989689b937bSHsin-Yi Wang			};
990689b937bSHsin-Yi Wang
991689b937bSHsin-Yi Wang			mt6397_vcore_reg: buck_vcore {
992689b937bSHsin-Yi Wang				regulator-compatible = "buck_vcore";
993689b937bSHsin-Yi Wang				regulator-name = "vcore";
994689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
995689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
996689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
997689b937bSHsin-Yi Wang				regulator-always-on;
998689b937bSHsin-Yi Wang			};
999689b937bSHsin-Yi Wang
1000689b937bSHsin-Yi Wang			mt6397_vgpu_reg: buck_vgpu {
1001689b937bSHsin-Yi Wang				regulator-compatible = "buck_vgpu";
1002689b937bSHsin-Yi Wang				regulator-name = "vgpu";
1003689b937bSHsin-Yi Wang				regulator-min-microvolt = < 700000>;
1004689b937bSHsin-Yi Wang				regulator-max-microvolt = <1350000>;
1005689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
1006689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <115>;
1007689b937bSHsin-Yi Wang			};
1008689b937bSHsin-Yi Wang
1009689b937bSHsin-Yi Wang			mt6397_vdrm_reg: buck_vdrm {
1010689b937bSHsin-Yi Wang				regulator-compatible = "buck_vdrm";
1011689b937bSHsin-Yi Wang				regulator-name = "vdrm";
1012689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
1013689b937bSHsin-Yi Wang				regulator-max-microvolt = <1400000>;
1014689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
1015689b937bSHsin-Yi Wang				regulator-always-on;
1016689b937bSHsin-Yi Wang			};
1017689b937bSHsin-Yi Wang
1018689b937bSHsin-Yi Wang			mt6397_vio18_reg: buck_vio18 {
1019689b937bSHsin-Yi Wang				regulator-compatible = "buck_vio18";
1020689b937bSHsin-Yi Wang				regulator-name = "vio18";
1021689b937bSHsin-Yi Wang				regulator-min-microvolt = <1620000>;
1022689b937bSHsin-Yi Wang				regulator-max-microvolt = <1980000>;
1023689b937bSHsin-Yi Wang				regulator-ramp-delay = <12500>;
1024689b937bSHsin-Yi Wang				regulator-always-on;
1025689b937bSHsin-Yi Wang			};
1026689b937bSHsin-Yi Wang
1027689b937bSHsin-Yi Wang			mt6397_vtcxo_reg: ldo_vtcxo {
1028689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vtcxo";
1029689b937bSHsin-Yi Wang				regulator-name = "vtcxo";
1030689b937bSHsin-Yi Wang				regulator-always-on;
1031689b937bSHsin-Yi Wang			};
1032689b937bSHsin-Yi Wang
1033689b937bSHsin-Yi Wang			mt6397_va28_reg: ldo_va28 {
1034689b937bSHsin-Yi Wang				regulator-compatible = "ldo_va28";
1035689b937bSHsin-Yi Wang				regulator-name = "va28";
1036689b937bSHsin-Yi Wang			};
1037689b937bSHsin-Yi Wang
1038689b937bSHsin-Yi Wang			mt6397_vcama_reg: ldo_vcama {
1039689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vcama";
1040689b937bSHsin-Yi Wang				regulator-name = "vcama";
1041689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1042689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1043689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1044689b937bSHsin-Yi Wang			};
1045689b937bSHsin-Yi Wang
1046689b937bSHsin-Yi Wang			mt6397_vio28_reg: ldo_vio28 {
1047689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vio28";
1048689b937bSHsin-Yi Wang				regulator-name = "vio28";
1049689b937bSHsin-Yi Wang				regulator-always-on;
1050689b937bSHsin-Yi Wang			};
1051689b937bSHsin-Yi Wang
1052689b937bSHsin-Yi Wang			mt6397_vusb_reg: ldo_vusb {
1053689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vusb";
1054689b937bSHsin-Yi Wang				regulator-name = "vusb";
1055689b937bSHsin-Yi Wang			};
1056689b937bSHsin-Yi Wang
1057689b937bSHsin-Yi Wang			mt6397_vmc_reg: ldo_vmc {
1058689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vmc";
1059689b937bSHsin-Yi Wang				regulator-name = "vmc";
1060689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1061689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1062689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1063689b937bSHsin-Yi Wang			};
1064689b937bSHsin-Yi Wang
1065689b937bSHsin-Yi Wang			mt6397_vmch_reg: ldo_vmch {
1066689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vmch";
1067689b937bSHsin-Yi Wang				regulator-name = "vmch";
1068689b937bSHsin-Yi Wang				regulator-min-microvolt = <3000000>;
1069689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1070689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1071689b937bSHsin-Yi Wang			};
1072689b937bSHsin-Yi Wang
1073689b937bSHsin-Yi Wang			mt6397_vemc_3v3_reg: ldo_vemc3v3 {
1074689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vemc3v3";
1075689b937bSHsin-Yi Wang				regulator-name = "vemc_3v3";
1076689b937bSHsin-Yi Wang				regulator-min-microvolt = <3000000>;
1077689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1078689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1079689b937bSHsin-Yi Wang			};
1080689b937bSHsin-Yi Wang
1081689b937bSHsin-Yi Wang			mt6397_vgp1_reg: ldo_vgp1 {
1082689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp1";
1083689b937bSHsin-Yi Wang				regulator-name = "vcamd";
1084689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1085689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1086689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <240>;
1087689b937bSHsin-Yi Wang			};
1088689b937bSHsin-Yi Wang
1089689b937bSHsin-Yi Wang			mt6397_vgp2_reg: ldo_vgp2 {
1090689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp2";
1091689b937bSHsin-Yi Wang				regulator-name = "vcamio";
1092689b937bSHsin-Yi Wang				regulator-min-microvolt = <3300000>;
1093689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1094689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1095689b937bSHsin-Yi Wang			};
1096689b937bSHsin-Yi Wang
1097689b937bSHsin-Yi Wang			mt6397_vgp3_reg: ldo_vgp3 {
1098689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp3";
1099689b937bSHsin-Yi Wang				regulator-name = "vcamaf";
1100689b937bSHsin-Yi Wang				regulator-min-microvolt = <1800000>;
1101689b937bSHsin-Yi Wang				regulator-max-microvolt = <1800000>;
1102689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1103689b937bSHsin-Yi Wang			};
1104689b937bSHsin-Yi Wang
1105689b937bSHsin-Yi Wang			mt6397_vgp4_reg: ldo_vgp4 {
1106689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp4";
1107689b937bSHsin-Yi Wang				regulator-name = "vgp4";
1108689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
1109689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1110689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1111689b937bSHsin-Yi Wang			};
1112689b937bSHsin-Yi Wang
1113689b937bSHsin-Yi Wang			mt6397_vgp5_reg: ldo_vgp5 {
1114689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp5";
1115689b937bSHsin-Yi Wang				regulator-name = "vgp5";
1116689b937bSHsin-Yi Wang				regulator-min-microvolt = <1200000>;
1117689b937bSHsin-Yi Wang				regulator-max-microvolt = <3000000>;
1118689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1119689b937bSHsin-Yi Wang			};
1120689b937bSHsin-Yi Wang
1121689b937bSHsin-Yi Wang			mt6397_vgp6_reg: ldo_vgp6 {
1122689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vgp6";
1123689b937bSHsin-Yi Wang				regulator-name = "vgp6";
1124689b937bSHsin-Yi Wang				regulator-min-microvolt = <3300000>;
1125689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1126689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1127689b937bSHsin-Yi Wang				regulator-always-on;
1128689b937bSHsin-Yi Wang			};
1129689b937bSHsin-Yi Wang
1130689b937bSHsin-Yi Wang			mt6397_vibr_reg: ldo_vibr {
1131689b937bSHsin-Yi Wang				regulator-compatible = "ldo_vibr";
1132689b937bSHsin-Yi Wang				regulator-name = "vibr";
1133689b937bSHsin-Yi Wang				regulator-min-microvolt = <1300000>;
1134689b937bSHsin-Yi Wang				regulator-max-microvolt = <3300000>;
1135689b937bSHsin-Yi Wang				regulator-enable-ramp-delay = <218>;
1136689b937bSHsin-Yi Wang			};
1137689b937bSHsin-Yi Wang		};
1138689b937bSHsin-Yi Wang
1139689b937bSHsin-Yi Wang		rtc: mt6397rtc {
1140689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-rtc";
1141689b937bSHsin-Yi Wang		};
1142689b937bSHsin-Yi Wang
1143689b937bSHsin-Yi Wang		syscfg_pctl_pmic: syscfg_pctl_pmic@c000 {
1144689b937bSHsin-Yi Wang			compatible = "mediatek,mt6397-pctl-pmic-syscfg",
1145689b937bSHsin-Yi Wang				     "syscon";
1146689b937bSHsin-Yi Wang			reg = <0 0x0000c000 0 0x0108>;
1147689b937bSHsin-Yi Wang		};
1148689b937bSHsin-Yi Wang	};
1149689b937bSHsin-Yi Wang};
1150689b937bSHsin-Yi Wang
1151689b937bSHsin-Yi Wang&spi {
1152689b937bSHsin-Yi Wang	pinctrl-names = "default";
1153689b937bSHsin-Yi Wang	pinctrl-0 = <&spi_pins_a>;
1154689b937bSHsin-Yi Wang	mediatek,pad-select = <1>;
1155689b937bSHsin-Yi Wang	status = "okay";
1156689b937bSHsin-Yi Wang	/* clients */
1157689b937bSHsin-Yi Wang	cros_ec: ec@0 {
1158689b937bSHsin-Yi Wang		compatible = "google,cros-ec-spi";
1159689b937bSHsin-Yi Wang		reg = <0x0>;
1160689b937bSHsin-Yi Wang		spi-max-frequency = <12000000>;
1161689b937bSHsin-Yi Wang		interrupt-parent = <&pio>;
1162689b937bSHsin-Yi Wang		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
1163689b937bSHsin-Yi Wang		google,cros-ec-spi-msg-delay = <500>;
1164689b937bSHsin-Yi Wang
1165689b937bSHsin-Yi Wang		i2c_tunnel: i2c-tunnel0 {
1166689b937bSHsin-Yi Wang			compatible = "google,cros-ec-i2c-tunnel";
1167689b937bSHsin-Yi Wang			google,remote-bus = <0>;
1168689b937bSHsin-Yi Wang			#address-cells = <1>;
1169689b937bSHsin-Yi Wang			#size-cells = <0>;
1170689b937bSHsin-Yi Wang
1171689b937bSHsin-Yi Wang			battery: sbs-battery@b {
1172689b937bSHsin-Yi Wang				compatible = "sbs,sbs-battery";
1173689b937bSHsin-Yi Wang				reg = <0xb>;
1174689b937bSHsin-Yi Wang				sbs,i2c-retry-count = <2>;
1175689b937bSHsin-Yi Wang				sbs,poll-retry-count = <1>;
1176689b937bSHsin-Yi Wang			};
1177689b937bSHsin-Yi Wang		};
1178689b937bSHsin-Yi Wang	};
1179689b937bSHsin-Yi Wang};
1180689b937bSHsin-Yi Wang
1181689b937bSHsin-Yi Wang&ssusb {
1182689b937bSHsin-Yi Wang	dr_mode = "host";
1183689b937bSHsin-Yi Wang	wakeup-source;
1184689b937bSHsin-Yi Wang	vusb33-supply = <&mt6397_vusb_reg>;
1185689b937bSHsin-Yi Wang	status = "okay";
1186689b937bSHsin-Yi Wang};
1187689b937bSHsin-Yi Wang
1188689b937bSHsin-Yi Wang&thermal {
1189689b937bSHsin-Yi Wang	bank0-supply = <&mt6397_vpca15_reg>;
1190689b937bSHsin-Yi Wang	bank1-supply = <&da9211_vcpu_reg>;
1191689b937bSHsin-Yi Wang};
1192689b937bSHsin-Yi Wang
1193689b937bSHsin-Yi Wang&uart0 {
1194689b937bSHsin-Yi Wang	status = "okay";
1195689b937bSHsin-Yi Wang};
1196689b937bSHsin-Yi Wang
1197689b937bSHsin-Yi Wang&usb_host {
1198689b937bSHsin-Yi Wang	pinctrl-names = "default";
1199689b937bSHsin-Yi Wang	pinctrl-0 = <&usb_pins>;
1200689b937bSHsin-Yi Wang	vusb33-supply = <&mt6397_vusb_reg>;
1201689b937bSHsin-Yi Wang	status = "okay";
1202689b937bSHsin-Yi Wang};
1203689b937bSHsin-Yi Wang
1204689b937bSHsin-Yi Wang#include <arm/cros-ec-keyboard.dtsi>
1205