1c9ccf3a3SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2c9ccf3a3SEmmanuel Vadot
3c9ccf3a3SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
4c9ccf3a3SEmmanuel Vadot#include <dt-bindings/input/gpio-keys.h>
5c9ccf3a3SEmmanuel Vadot#include <dt-bindings/input/input.h>
6c9ccf3a3SEmmanuel Vadot#include <dt-bindings/leds/common.h>
7c9ccf3a3SEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
8c9ccf3a3SEmmanuel Vadot
9c9ccf3a3SEmmanuel Vadot#include "rk3566.dtsi"
10c9ccf3a3SEmmanuel Vadot
11c9ccf3a3SEmmanuel Vadot/ {
12c9ccf3a3SEmmanuel Vadot	aliases {
13c9ccf3a3SEmmanuel Vadot		mmc0 = &sdhci;
14c9ccf3a3SEmmanuel Vadot	};
15c9ccf3a3SEmmanuel Vadot
16c9ccf3a3SEmmanuel Vadot	chosen {
17c9ccf3a3SEmmanuel Vadot		stdout-path = "serial2:1500000n8";
18c9ccf3a3SEmmanuel Vadot	};
19c9ccf3a3SEmmanuel Vadot
20c9ccf3a3SEmmanuel Vadot	adc-keys {
21c9ccf3a3SEmmanuel Vadot		compatible = "adc-keys";
22c9ccf3a3SEmmanuel Vadot		io-channels = <&saradc 0>;
23c9ccf3a3SEmmanuel Vadot		io-channel-names = "buttons";
24c9ccf3a3SEmmanuel Vadot		keyup-threshold-microvolt = <1750000>;
25c9ccf3a3SEmmanuel Vadot
26*7ef62cebSEmmanuel Vadot		button-recovery {
27c9ccf3a3SEmmanuel Vadot			label = "recovery";
28c9ccf3a3SEmmanuel Vadot			linux,code = <KEY_VENDOR>;
29c9ccf3a3SEmmanuel Vadot			press-threshold-microvolt = <0>;
30c9ccf3a3SEmmanuel Vadot		};
31c9ccf3a3SEmmanuel Vadot	};
32c9ccf3a3SEmmanuel Vadot
33c9ccf3a3SEmmanuel Vadot	spk_amp: audio-amplifier {
34c9ccf3a3SEmmanuel Vadot		compatible = "simple-audio-amplifier";
35c9ccf3a3SEmmanuel Vadot		enable-gpios = <&gpio3 RK_PC4 GPIO_ACTIVE_HIGH>;
36c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&spk_amp_enable_h>;
37c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
38c9ccf3a3SEmmanuel Vadot		sound-name-prefix = "Speaker Amp";
39c9ccf3a3SEmmanuel Vadot	};
40c9ccf3a3SEmmanuel Vadot
41c9ccf3a3SEmmanuel Vadot	dmic_codec: dmic-codec {
42c9ccf3a3SEmmanuel Vadot		compatible = "dmic-codec";
43c9ccf3a3SEmmanuel Vadot		num-channels = <6>;
44c9ccf3a3SEmmanuel Vadot		#sound-dai-cells = <0>;
45c9ccf3a3SEmmanuel Vadot	};
46c9ccf3a3SEmmanuel Vadot
47c9ccf3a3SEmmanuel Vadot	gpio-keys {
48c9ccf3a3SEmmanuel Vadot		compatible = "gpio-keys";
49c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&hall_int_l>;
50c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
51c9ccf3a3SEmmanuel Vadot
52b97ee269SEmmanuel Vadot		switch-cover {
53c9ccf3a3SEmmanuel Vadot			label = "cover";
54c9ccf3a3SEmmanuel Vadot			gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_LOW>;
55c9ccf3a3SEmmanuel Vadot			linux,input-type = <EV_SW>;
56c9ccf3a3SEmmanuel Vadot			linux,code = <SW_MACHINE_COVER>;
57c9ccf3a3SEmmanuel Vadot			linux,can-disable;
58c9ccf3a3SEmmanuel Vadot			wakeup-event-action = <EV_ACT_DEASSERTED>;
59c9ccf3a3SEmmanuel Vadot			wakeup-source;
60c9ccf3a3SEmmanuel Vadot		};
61c9ccf3a3SEmmanuel Vadot	};
62c9ccf3a3SEmmanuel Vadot
63c9ccf3a3SEmmanuel Vadot	gpio-leds {
64c9ccf3a3SEmmanuel Vadot		compatible = "gpio-leds";
65c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&led_pin>;
66c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
67c9ccf3a3SEmmanuel Vadot
68c9ccf3a3SEmmanuel Vadot		led-0 {
69c9ccf3a3SEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
70c9ccf3a3SEmmanuel Vadot			function = LED_FUNCTION_CHARGING;
71c9ccf3a3SEmmanuel Vadot			gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
72c9ccf3a3SEmmanuel Vadot		};
73c9ccf3a3SEmmanuel Vadot	};
74c9ccf3a3SEmmanuel Vadot
75c9ccf3a3SEmmanuel Vadot	sdio_pwrseq: sdio-pwrseq {
76c9ccf3a3SEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
77c9ccf3a3SEmmanuel Vadot		clocks = <&rk817 1>;
78c9ccf3a3SEmmanuel Vadot		clock-names = "ext_clock";
79c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&wifi_enable_h>;
80c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
81c9ccf3a3SEmmanuel Vadot		reset-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_LOW>;
82c9ccf3a3SEmmanuel Vadot	};
83c9ccf3a3SEmmanuel Vadot
84c9ccf3a3SEmmanuel Vadot	sound {
85c9ccf3a3SEmmanuel Vadot		compatible = "simple-audio-card";
86c9ccf3a3SEmmanuel Vadot		simple-audio-card,name = "PineNote";
87c9ccf3a3SEmmanuel Vadot		simple-audio-card,aux-devs = <&spk_amp>;
88c9ccf3a3SEmmanuel Vadot		simple-audio-card,widgets = "Headphone", "Headphones",
89c9ccf3a3SEmmanuel Vadot					    "Speaker", "Internal Speakers";
90c9ccf3a3SEmmanuel Vadot		simple-audio-card,routing = "Headphones", "HPOL",
91c9ccf3a3SEmmanuel Vadot					    "Headphones", "HPOR",
92c9ccf3a3SEmmanuel Vadot					    "Internal Speakers", "Speaker Amp OUTL",
93c9ccf3a3SEmmanuel Vadot					    "Internal Speakers", "Speaker Amp OUTR",
94c9ccf3a3SEmmanuel Vadot					    "Speaker Amp INL", "HPOL",
95c9ccf3a3SEmmanuel Vadot					    "Speaker Amp INR", "HPOR";
96c9ccf3a3SEmmanuel Vadot		simple-audio-card,pin-switches = "Internal Speakers";
97c9ccf3a3SEmmanuel Vadot		#address-cells = <1>;
98c9ccf3a3SEmmanuel Vadot		#size-cells = <0>;
99c9ccf3a3SEmmanuel Vadot
100c9ccf3a3SEmmanuel Vadot		simple-audio-card,dai-link@0 {
101c9ccf3a3SEmmanuel Vadot			reg = <0>;
102c9ccf3a3SEmmanuel Vadot			bitclock-master = <&link0_cpu>;
103c9ccf3a3SEmmanuel Vadot			format = "i2s";
104c9ccf3a3SEmmanuel Vadot			frame-master = <&link0_cpu>;
105c9ccf3a3SEmmanuel Vadot			mclk-fs = <256>;
106c9ccf3a3SEmmanuel Vadot
107c9ccf3a3SEmmanuel Vadot			link0_cpu: cpu {
108c9ccf3a3SEmmanuel Vadot				sound-dai = <&i2s1_8ch>;
109c9ccf3a3SEmmanuel Vadot			};
110c9ccf3a3SEmmanuel Vadot
111c9ccf3a3SEmmanuel Vadot			link0_codec: codec {
112c9ccf3a3SEmmanuel Vadot				sound-dai = <&rk817>;
113c9ccf3a3SEmmanuel Vadot			};
114c9ccf3a3SEmmanuel Vadot		};
115c9ccf3a3SEmmanuel Vadot
116c9ccf3a3SEmmanuel Vadot		simple-audio-card,dai-link@1 {
117c9ccf3a3SEmmanuel Vadot			reg = <1>;
118c9ccf3a3SEmmanuel Vadot			bitclock-master = <&link1_cpu>;
119c9ccf3a3SEmmanuel Vadot			format = "pdm";
120c9ccf3a3SEmmanuel Vadot			frame-master = <&link1_cpu>;
121c9ccf3a3SEmmanuel Vadot
122c9ccf3a3SEmmanuel Vadot			link1_cpu: cpu {
123c9ccf3a3SEmmanuel Vadot				sound-dai = <&pdm>;
124c9ccf3a3SEmmanuel Vadot			};
125c9ccf3a3SEmmanuel Vadot
126c9ccf3a3SEmmanuel Vadot			link1_codec: codec {
127c9ccf3a3SEmmanuel Vadot				sound-dai = <&dmic_codec>;
128c9ccf3a3SEmmanuel Vadot			};
129c9ccf3a3SEmmanuel Vadot		};
130c9ccf3a3SEmmanuel Vadot	};
131c9ccf3a3SEmmanuel Vadot
132c9ccf3a3SEmmanuel Vadot	vbat_4g: vbat-4g {
133c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
134c9ccf3a3SEmmanuel Vadot		regulator-name = "vbat_4g";
135c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3800000>;
136c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3800000>;
137c9ccf3a3SEmmanuel Vadot		/* powered by vcc_bat, enabled by vbat_4g_en */
138c9ccf3a3SEmmanuel Vadot		vin-supply = <&vbat_4g_en>;
139c9ccf3a3SEmmanuel Vadot	};
140c9ccf3a3SEmmanuel Vadot
141c9ccf3a3SEmmanuel Vadot	vcc_1v8: vcc-1v8 {
142c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
143c9ccf3a3SEmmanuel Vadot		regulator-name = "vcc_1v8";
144c9ccf3a3SEmmanuel Vadot		regulator-always-on;
145c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
146c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
147c9ccf3a3SEmmanuel Vadot		/* powered by vcc_sys, enabled by vcc_1v8_en */
148c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_1v8_en>;
149c9ccf3a3SEmmanuel Vadot	};
150c9ccf3a3SEmmanuel Vadot
151c9ccf3a3SEmmanuel Vadot	vcc_bat: vcc-bat {
152c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
153c9ccf3a3SEmmanuel Vadot		regulator-name = "vcc_bat";
154c9ccf3a3SEmmanuel Vadot		regulator-always-on;
155c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3800000>;
156c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3800000>;
157c9ccf3a3SEmmanuel Vadot	};
158c9ccf3a3SEmmanuel Vadot
159c9ccf3a3SEmmanuel Vadot	vcc_hall_3v3: vcc-hall-3v3 {
160c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
161c9ccf3a3SEmmanuel Vadot		regulator-name = "vcc_hall_3v3";
162c9ccf3a3SEmmanuel Vadot		regulator-always-on;
163c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
164c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
165c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_sys>;
166c9ccf3a3SEmmanuel Vadot	};
167c9ccf3a3SEmmanuel Vadot
168c9ccf3a3SEmmanuel Vadot	vcc_sys: vcc-sys {
169c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
170c9ccf3a3SEmmanuel Vadot		regulator-name = "vcc_sys";
171c9ccf3a3SEmmanuel Vadot		regulator-always-on;
172c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3800000>;
173c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3800000>;
174c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_bat>;
175c9ccf3a3SEmmanuel Vadot	};
176c9ccf3a3SEmmanuel Vadot
177c9ccf3a3SEmmanuel Vadot	vcc_wl: vcc-wl {
178c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
179c9ccf3a3SEmmanuel Vadot		enable-active-high;
180c9ccf3a3SEmmanuel Vadot		gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
181c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&vcc_wl_pin>;
182c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
183c9ccf3a3SEmmanuel Vadot		regulator-name = "vcc_wl";
184c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
185c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
186c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_bat>;
187c9ccf3a3SEmmanuel Vadot	};
188c9ccf3a3SEmmanuel Vadot
189c9ccf3a3SEmmanuel Vadot	vdda_0v9: vdda-0v9 {
190c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
191c9ccf3a3SEmmanuel Vadot		regulator-name = "vdda_0v9";
192c9ccf3a3SEmmanuel Vadot		regulator-always-on;
193c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <900000>;
194c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <900000>;
195c9ccf3a3SEmmanuel Vadot		/* powered by vcc_sys, enabled by vcc_1v8_en */
196c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_1v8_en>;
197c9ccf3a3SEmmanuel Vadot	};
198c9ccf3a3SEmmanuel Vadot};
199c9ccf3a3SEmmanuel Vadot
200c9ccf3a3SEmmanuel Vadot&cpu0 {
201c9ccf3a3SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
202c9ccf3a3SEmmanuel Vadot};
203c9ccf3a3SEmmanuel Vadot
204c9ccf3a3SEmmanuel Vadot&cpu1 {
205c9ccf3a3SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
206c9ccf3a3SEmmanuel Vadot};
207c9ccf3a3SEmmanuel Vadot
208c9ccf3a3SEmmanuel Vadot&cpu2 {
209c9ccf3a3SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
210c9ccf3a3SEmmanuel Vadot};
211c9ccf3a3SEmmanuel Vadot
212c9ccf3a3SEmmanuel Vadot&cpu3 {
213c9ccf3a3SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
214c9ccf3a3SEmmanuel Vadot};
215c9ccf3a3SEmmanuel Vadot
216c9ccf3a3SEmmanuel Vadot&i2c0 {
217c9ccf3a3SEmmanuel Vadot	status = "okay";
218c9ccf3a3SEmmanuel Vadot
219c9ccf3a3SEmmanuel Vadot	vdd_cpu: regulator@1c {
220c9ccf3a3SEmmanuel Vadot		compatible = "tcs,tcs4525";
221c9ccf3a3SEmmanuel Vadot		reg = <0x1c>;
222c9ccf3a3SEmmanuel Vadot		fcs,suspend-voltage-selector = <0>;
223c9ccf3a3SEmmanuel Vadot		regulator-name = "vdd_cpu";
224c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <712500>;
225c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1390000>;
226c9ccf3a3SEmmanuel Vadot		regulator-ramp-delay = <2300>;
227c9ccf3a3SEmmanuel Vadot		regulator-always-on;
228c9ccf3a3SEmmanuel Vadot		vin-supply = <&vcc_sys>;
229c9ccf3a3SEmmanuel Vadot
230c9ccf3a3SEmmanuel Vadot		regulator-state-mem {
231c9ccf3a3SEmmanuel Vadot			regulator-on-in-suspend;
232c9ccf3a3SEmmanuel Vadot		};
233c9ccf3a3SEmmanuel Vadot	};
234c9ccf3a3SEmmanuel Vadot
235c9ccf3a3SEmmanuel Vadot	rk817: pmic@20 {
236c9ccf3a3SEmmanuel Vadot		compatible = "rockchip,rk817";
237c9ccf3a3SEmmanuel Vadot		reg = <0x20>;
238c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&gpio0>;
239c9ccf3a3SEmmanuel Vadot		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
240c9ccf3a3SEmmanuel Vadot		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
241c9ccf3a3SEmmanuel Vadot		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
242c9ccf3a3SEmmanuel Vadot		clocks = <&cru I2S1_MCLKOUT_TX>;
243c9ccf3a3SEmmanuel Vadot		clock-names = "mclk";
244c9ccf3a3SEmmanuel Vadot		#clock-cells = <1>;
245c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&i2s1m0_mclk>, <&pmic_int_l>, <&pmic_sleep>;
246c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
247c9ccf3a3SEmmanuel Vadot		rockchip,system-power-controller;
248c9ccf3a3SEmmanuel Vadot		#sound-dai-cells = <0>;
249c9ccf3a3SEmmanuel Vadot		wakeup-source;
250c9ccf3a3SEmmanuel Vadot
251c9ccf3a3SEmmanuel Vadot		vcc1-supply = <&vcc_sys>;
252c9ccf3a3SEmmanuel Vadot		vcc2-supply = <&vcc_sys>;
253c9ccf3a3SEmmanuel Vadot		vcc3-supply = <&vcc_sys>;
254c9ccf3a3SEmmanuel Vadot		vcc4-supply = <&vcc_sys>;
255c9ccf3a3SEmmanuel Vadot		vcc5-supply = <&vcc_sys>;
256c9ccf3a3SEmmanuel Vadot		vcc6-supply = <&vcc_sys>;
257c9ccf3a3SEmmanuel Vadot		vcc7-supply = <&vcc_sys>;
258c9ccf3a3SEmmanuel Vadot		vcc8-supply = <&vcc_sys>;
259c9ccf3a3SEmmanuel Vadot		vcc9-supply = <&dcdc_boost>;
260c9ccf3a3SEmmanuel Vadot
261c9ccf3a3SEmmanuel Vadot		regulators {
262c9ccf3a3SEmmanuel Vadot			vdd_logic: DCDC_REG1 {
263c9ccf3a3SEmmanuel Vadot				regulator-name = "vdd_logic";
264c9ccf3a3SEmmanuel Vadot				regulator-always-on;
265c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <500000>;
266c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1350000>;
267c9ccf3a3SEmmanuel Vadot				regulator-ramp-delay = <6001>;
268c9ccf3a3SEmmanuel Vadot				regulator-initial-mode = <0x2>;
269c9ccf3a3SEmmanuel Vadot
270c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
271c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
272c9ccf3a3SEmmanuel Vadot					regulator-suspend-microvolt = <900000>;
273c9ccf3a3SEmmanuel Vadot				};
274c9ccf3a3SEmmanuel Vadot			};
275c9ccf3a3SEmmanuel Vadot
276c9ccf3a3SEmmanuel Vadot			vdd_gpu_npu: DCDC_REG2 {
277c9ccf3a3SEmmanuel Vadot				regulator-name = "vdd_gpu_npu";
278c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <500000>;
279c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1350000>;
280c9ccf3a3SEmmanuel Vadot				regulator-ramp-delay = <6001>;
281c9ccf3a3SEmmanuel Vadot				regulator-initial-mode = <0x2>;
282c9ccf3a3SEmmanuel Vadot
283c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
284c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
285c9ccf3a3SEmmanuel Vadot				};
286c9ccf3a3SEmmanuel Vadot			};
287c9ccf3a3SEmmanuel Vadot
288c9ccf3a3SEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
289c9ccf3a3SEmmanuel Vadot				regulator-name = "vcc_ddr";
290c9ccf3a3SEmmanuel Vadot				regulator-always-on;
291c9ccf3a3SEmmanuel Vadot				regulator-initial-mode = <0x2>;
292c9ccf3a3SEmmanuel Vadot
293c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
294c9ccf3a3SEmmanuel Vadot					regulator-on-in-suspend;
295c9ccf3a3SEmmanuel Vadot				};
296c9ccf3a3SEmmanuel Vadot			};
297c9ccf3a3SEmmanuel Vadot
298c9ccf3a3SEmmanuel Vadot			vcc_3v3: DCDC_REG4 {
299c9ccf3a3SEmmanuel Vadot				regulator-name = "vcc_3v3";
300c9ccf3a3SEmmanuel Vadot				regulator-always-on;
301c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <3300000>;
302c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
303c9ccf3a3SEmmanuel Vadot				regulator-initial-mode = <0x2>;
304c9ccf3a3SEmmanuel Vadot
305c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
306c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
307c9ccf3a3SEmmanuel Vadot				};
308c9ccf3a3SEmmanuel Vadot			};
309c9ccf3a3SEmmanuel Vadot
310c9ccf3a3SEmmanuel Vadot			vcca_1v8_pmu: LDO_REG1 {
311c9ccf3a3SEmmanuel Vadot				regulator-name = "vcca_1v8_pmu";
312c9ccf3a3SEmmanuel Vadot				regulator-always-on;
313c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
314c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
315c9ccf3a3SEmmanuel Vadot
316c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
317c9ccf3a3SEmmanuel Vadot					regulator-on-in-suspend;
318c9ccf3a3SEmmanuel Vadot				};
319c9ccf3a3SEmmanuel Vadot			};
320c9ccf3a3SEmmanuel Vadot
321c9ccf3a3SEmmanuel Vadot			/* unused */
322c9ccf3a3SEmmanuel Vadot			vdda_0v9_ldo: LDO_REG2 {
323c9ccf3a3SEmmanuel Vadot				regulator-name = "vdda_0v9_ldo";
324c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <900000>;
325c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <900000>;
326c9ccf3a3SEmmanuel Vadot
327c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
328c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
329c9ccf3a3SEmmanuel Vadot				};
330c9ccf3a3SEmmanuel Vadot			};
331c9ccf3a3SEmmanuel Vadot
332c9ccf3a3SEmmanuel Vadot			vdda_0v9_pmu: LDO_REG3 {
333c9ccf3a3SEmmanuel Vadot				regulator-name = "vdda_0v9_pmu";
334c9ccf3a3SEmmanuel Vadot				regulator-always-on;
335c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <900000>;
336c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <900000>;
337c9ccf3a3SEmmanuel Vadot
338c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
339c9ccf3a3SEmmanuel Vadot					regulator-on-in-suspend;
340c9ccf3a3SEmmanuel Vadot				};
341c9ccf3a3SEmmanuel Vadot			};
342c9ccf3a3SEmmanuel Vadot
343c9ccf3a3SEmmanuel Vadot			vccio_acodec: LDO_REG4 {
344c9ccf3a3SEmmanuel Vadot				regulator-name = "vccio_acodec";
345c9ccf3a3SEmmanuel Vadot				regulator-always-on;
346c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <3300000>;
347c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
348c9ccf3a3SEmmanuel Vadot
349c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
350c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
351c9ccf3a3SEmmanuel Vadot				};
352c9ccf3a3SEmmanuel Vadot			};
353c9ccf3a3SEmmanuel Vadot
354c9ccf3a3SEmmanuel Vadot			/* unused */
355c9ccf3a3SEmmanuel Vadot			vccio_sd: LDO_REG5 {
356c9ccf3a3SEmmanuel Vadot				regulator-name = "vccio_sd";
357c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
358c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
359c9ccf3a3SEmmanuel Vadot
360c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
361c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
362c9ccf3a3SEmmanuel Vadot				};
363c9ccf3a3SEmmanuel Vadot			};
364c9ccf3a3SEmmanuel Vadot
365c9ccf3a3SEmmanuel Vadot			vcc_3v3_pmu: LDO_REG6 {
366c9ccf3a3SEmmanuel Vadot				regulator-name = "vcc_3v3_pmu";
367c9ccf3a3SEmmanuel Vadot				regulator-always-on;
368c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <3300000>;
369c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
370c9ccf3a3SEmmanuel Vadot
371c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
372c9ccf3a3SEmmanuel Vadot					regulator-on-in-suspend;
373c9ccf3a3SEmmanuel Vadot				};
374c9ccf3a3SEmmanuel Vadot			};
375c9ccf3a3SEmmanuel Vadot
376c9ccf3a3SEmmanuel Vadot			vcc_1v8_en: LDO_REG7 {
377c9ccf3a3SEmmanuel Vadot				regulator-name = "vcc_1v8_en";
378c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
379c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
380c9ccf3a3SEmmanuel Vadot
381c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
382c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
383c9ccf3a3SEmmanuel Vadot				};
384c9ccf3a3SEmmanuel Vadot			};
385c9ccf3a3SEmmanuel Vadot
386c9ccf3a3SEmmanuel Vadot			vbat_4g_en: LDO_REG8 {
387c9ccf3a3SEmmanuel Vadot				regulator-name = "vbat_4g_en";
388c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
389c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
390c9ccf3a3SEmmanuel Vadot
391c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
392c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
393c9ccf3a3SEmmanuel Vadot				};
394c9ccf3a3SEmmanuel Vadot			};
395c9ccf3a3SEmmanuel Vadot
396c9ccf3a3SEmmanuel Vadot			sleep_sta_ctl: LDO_REG9 {
397c9ccf3a3SEmmanuel Vadot				regulator-name = "sleep_sta_ctl";
398c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
399c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
400c9ccf3a3SEmmanuel Vadot
401c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
402c9ccf3a3SEmmanuel Vadot					regulator-on-in-suspend;
403c9ccf3a3SEmmanuel Vadot				};
404c9ccf3a3SEmmanuel Vadot			};
405c9ccf3a3SEmmanuel Vadot
406c9ccf3a3SEmmanuel Vadot			dcdc_boost: BOOST {
407c9ccf3a3SEmmanuel Vadot				regulator-name = "boost";
408c9ccf3a3SEmmanuel Vadot				regulator-min-microvolt = <5000000>;
409c9ccf3a3SEmmanuel Vadot				regulator-max-microvolt = <5000000>;
410c9ccf3a3SEmmanuel Vadot
411c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
412c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
413c9ccf3a3SEmmanuel Vadot				};
414c9ccf3a3SEmmanuel Vadot			};
415c9ccf3a3SEmmanuel Vadot
416c9ccf3a3SEmmanuel Vadot			otg_switch: OTG_SWITCH {
417c9ccf3a3SEmmanuel Vadot				regulator-name = "otg_switch";
418c9ccf3a3SEmmanuel Vadot
419c9ccf3a3SEmmanuel Vadot				regulator-state-mem {
420c9ccf3a3SEmmanuel Vadot					regulator-off-in-suspend;
421c9ccf3a3SEmmanuel Vadot				};
422c9ccf3a3SEmmanuel Vadot			};
423c9ccf3a3SEmmanuel Vadot		};
424c9ccf3a3SEmmanuel Vadot	};
425c9ccf3a3SEmmanuel Vadot};
426c9ccf3a3SEmmanuel Vadot
427c9ccf3a3SEmmanuel Vadot&i2c1 {
428c9ccf3a3SEmmanuel Vadot	status = "okay";
429c9ccf3a3SEmmanuel Vadot
430c9ccf3a3SEmmanuel Vadot	digitizer@9 {
431c9ccf3a3SEmmanuel Vadot		compatible = "wacom,w9013", "hid-over-i2c";
432c9ccf3a3SEmmanuel Vadot		reg = <0x09>;
433c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&gpio0>;
434c9ccf3a3SEmmanuel Vadot		interrupts = <RK_PB6 IRQ_TYPE_LEVEL_LOW>;
435c9ccf3a3SEmmanuel Vadot		hid-descr-addr = <0x1>;
436c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&pen_fwe>, <&pen_irq_l>, <&pen_rst_l>;
437c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
438c9ccf3a3SEmmanuel Vadot		vdd-supply = <&vcc_3v3_pmu>;
439c9ccf3a3SEmmanuel Vadot	};
440c9ccf3a3SEmmanuel Vadot};
441c9ccf3a3SEmmanuel Vadot
442c9ccf3a3SEmmanuel Vadot&i2c3 {
443c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2c3m1_xfer>;
444c9ccf3a3SEmmanuel Vadot	status = "okay";
445c9ccf3a3SEmmanuel Vadot
446c9ccf3a3SEmmanuel Vadot	led-controller@36 {
447c9ccf3a3SEmmanuel Vadot		compatible = "ti,lm3630a";
448c9ccf3a3SEmmanuel Vadot		reg = <0x36>;
449c9ccf3a3SEmmanuel Vadot		enable-gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
450c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&backlight_hwen_h>;
451c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
452c9ccf3a3SEmmanuel Vadot		#address-cells = <1>;
453c9ccf3a3SEmmanuel Vadot		#size-cells = <0>;
454c9ccf3a3SEmmanuel Vadot
455c9ccf3a3SEmmanuel Vadot		led@0 {
456c9ccf3a3SEmmanuel Vadot			reg = <0>;
457c9ccf3a3SEmmanuel Vadot			label = "backlight_cool";
458c9ccf3a3SEmmanuel Vadot			default-brightness = <0>;
459c9ccf3a3SEmmanuel Vadot		};
460c9ccf3a3SEmmanuel Vadot
461c9ccf3a3SEmmanuel Vadot		led@1 {
462c9ccf3a3SEmmanuel Vadot			reg = <1>;
463c9ccf3a3SEmmanuel Vadot			label = "backlight_warm";
464c9ccf3a3SEmmanuel Vadot			default-brightness = <0>;
465c9ccf3a3SEmmanuel Vadot		};
466c9ccf3a3SEmmanuel Vadot	};
467d5b0e70fSEmmanuel Vadot
468d5b0e70fSEmmanuel Vadot	wusb3801: tcpc@60 {
469d5b0e70fSEmmanuel Vadot		compatible = "willsemi,wusb3801";
470d5b0e70fSEmmanuel Vadot		reg = <0x60>;
471d5b0e70fSEmmanuel Vadot		interrupt-parent = <&gpio0>;
472d5b0e70fSEmmanuel Vadot		interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
473d5b0e70fSEmmanuel Vadot		pinctrl-0 = <&tcpc_int_l>;
474d5b0e70fSEmmanuel Vadot		pinctrl-names = "default";
475d5b0e70fSEmmanuel Vadot
476d5b0e70fSEmmanuel Vadot		connector {
477d5b0e70fSEmmanuel Vadot			compatible = "usb-c-connector";
478d5b0e70fSEmmanuel Vadot			label = "USB-C";
479d5b0e70fSEmmanuel Vadot			vbus-supply = <&otg_switch>;
480d5b0e70fSEmmanuel Vadot			power-role = "dual";
481d5b0e70fSEmmanuel Vadot			try-power-role = "sink";
482d5b0e70fSEmmanuel Vadot			data-role = "dual";
483d5b0e70fSEmmanuel Vadot			typec-power-opmode = "default";
484d5b0e70fSEmmanuel Vadot			pd-disable;
485d5b0e70fSEmmanuel Vadot
486d5b0e70fSEmmanuel Vadot			ports {
487d5b0e70fSEmmanuel Vadot				#address-cells = <0x1>;
488d5b0e70fSEmmanuel Vadot				#size-cells = <0x0>;
489d5b0e70fSEmmanuel Vadot
490d5b0e70fSEmmanuel Vadot				port@0 {
491d5b0e70fSEmmanuel Vadot					reg = <0x0>;
492d5b0e70fSEmmanuel Vadot
493d5b0e70fSEmmanuel Vadot					typec_hs_usb2phy0: endpoint {
494d5b0e70fSEmmanuel Vadot						remote-endpoint = <&usb2phy0_typec_hs>;
495d5b0e70fSEmmanuel Vadot					};
496d5b0e70fSEmmanuel Vadot				};
497d5b0e70fSEmmanuel Vadot			};
498d5b0e70fSEmmanuel Vadot		};
499d5b0e70fSEmmanuel Vadot	};
500d5b0e70fSEmmanuel Vadot};
501d5b0e70fSEmmanuel Vadot
502d5b0e70fSEmmanuel Vadot&i2c5 {
503d5b0e70fSEmmanuel Vadot	status = "okay";
504d5b0e70fSEmmanuel Vadot
505d5b0e70fSEmmanuel Vadot	accelerometer@18 {
506d5b0e70fSEmmanuel Vadot		compatible = "silan,sc7a20";
507d5b0e70fSEmmanuel Vadot		reg = <0x18>;
508d5b0e70fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
509d5b0e70fSEmmanuel Vadot		interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>;
510d5b0e70fSEmmanuel Vadot		pinctrl-0 = <&accelerometer_int_l>;
511d5b0e70fSEmmanuel Vadot		pinctrl-names = "default";
512d5b0e70fSEmmanuel Vadot		st,drdy-int-pin = <1>;
513d5b0e70fSEmmanuel Vadot		vdd-supply = <&vcc_3v3>;
514d5b0e70fSEmmanuel Vadot		vddio-supply = <&vcc_3v3>;
515d5b0e70fSEmmanuel Vadot	};
516c9ccf3a3SEmmanuel Vadot};
517c9ccf3a3SEmmanuel Vadot
518c9ccf3a3SEmmanuel Vadot&i2s1_8ch {
519c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2s1m0_lrcktx>, <&i2s1m0_sclktx>, <&i2s1m0_sdi0>, <&i2s1m0_sdo0>;
520c9ccf3a3SEmmanuel Vadot	rockchip,trcm-sync-tx-only;
521c9ccf3a3SEmmanuel Vadot	status = "okay";
522c9ccf3a3SEmmanuel Vadot};
523c9ccf3a3SEmmanuel Vadot
524c9ccf3a3SEmmanuel Vadot&pdm {
525c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&pdmm0_clk1>, <&pdmm0_sdi1>, <&pdmm0_sdi2>;
526c9ccf3a3SEmmanuel Vadot	/* microphones are on channels 1 and 2 */
527c9ccf3a3SEmmanuel Vadot	rockchip,path-map = <1>, <2>, <0>, <3>;
528c9ccf3a3SEmmanuel Vadot	status = "okay";
529c9ccf3a3SEmmanuel Vadot};
530c9ccf3a3SEmmanuel Vadot
531c9ccf3a3SEmmanuel Vadot&pinctrl {
532d5b0e70fSEmmanuel Vadot	accelerometer {
533d5b0e70fSEmmanuel Vadot		accelerometer_int_l: accelerometer-int-l {
534d5b0e70fSEmmanuel Vadot			rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
535d5b0e70fSEmmanuel Vadot		};
536d5b0e70fSEmmanuel Vadot	};
537d5b0e70fSEmmanuel Vadot
538c9ccf3a3SEmmanuel Vadot	audio-amplifier {
539c9ccf3a3SEmmanuel Vadot		spk_amp_enable_h: spk-amp-enable-h {
540c9ccf3a3SEmmanuel Vadot			rockchip,pins = <3 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
541c9ccf3a3SEmmanuel Vadot		};
542c9ccf3a3SEmmanuel Vadot	};
543c9ccf3a3SEmmanuel Vadot
544c9ccf3a3SEmmanuel Vadot	backlight {
545c9ccf3a3SEmmanuel Vadot		backlight_hwen_h: backlight-hwen-h {
546c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
547c9ccf3a3SEmmanuel Vadot		};
548c9ccf3a3SEmmanuel Vadot	};
549c9ccf3a3SEmmanuel Vadot
550c9ccf3a3SEmmanuel Vadot	bt {
551c9ccf3a3SEmmanuel Vadot		bt_enable_h: bt-enable-h {
552c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
553c9ccf3a3SEmmanuel Vadot		};
554c9ccf3a3SEmmanuel Vadot
555c9ccf3a3SEmmanuel Vadot		bt_host_wake_l: bt-host-wake-l {
556c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up>;
557c9ccf3a3SEmmanuel Vadot		};
558c9ccf3a3SEmmanuel Vadot
559c9ccf3a3SEmmanuel Vadot		bt_wake_h: bt-wake-h {
560c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
561c9ccf3a3SEmmanuel Vadot		};
562c9ccf3a3SEmmanuel Vadot	};
563c9ccf3a3SEmmanuel Vadot
564c9ccf3a3SEmmanuel Vadot	led {
565c9ccf3a3SEmmanuel Vadot		led_pin: led-pin {
566c9ccf3a3SEmmanuel Vadot			rockchip,pins = <3 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
567c9ccf3a3SEmmanuel Vadot		};
568c9ccf3a3SEmmanuel Vadot	};
569c9ccf3a3SEmmanuel Vadot
570c9ccf3a3SEmmanuel Vadot	hall {
571c9ccf3a3SEmmanuel Vadot		hall_int_l: hall-int-l {
572c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
573c9ccf3a3SEmmanuel Vadot		};
574c9ccf3a3SEmmanuel Vadot	};
575c9ccf3a3SEmmanuel Vadot
576c9ccf3a3SEmmanuel Vadot	pen {
577c9ccf3a3SEmmanuel Vadot		pen_fwe: pen-fwe {
578c9ccf3a3SEmmanuel Vadot			rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_down>;
579c9ccf3a3SEmmanuel Vadot		};
580c9ccf3a3SEmmanuel Vadot
581c9ccf3a3SEmmanuel Vadot		pen_irq_l: pen-irq-l {
582c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
583c9ccf3a3SEmmanuel Vadot		};
584c9ccf3a3SEmmanuel Vadot
585c9ccf3a3SEmmanuel Vadot		pen_rst_l: pen-rst-l {
586c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
587c9ccf3a3SEmmanuel Vadot		};
588c9ccf3a3SEmmanuel Vadot	};
589c9ccf3a3SEmmanuel Vadot
590c9ccf3a3SEmmanuel Vadot	pmic {
591c9ccf3a3SEmmanuel Vadot		pmic_int_l: pmic-int-l {
592c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
593c9ccf3a3SEmmanuel Vadot		};
594c9ccf3a3SEmmanuel Vadot
595c9ccf3a3SEmmanuel Vadot		pmic_sleep: pmic-sleep {
596c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PA2 1 &pcfg_pull_none>;
597c9ccf3a3SEmmanuel Vadot		};
598c9ccf3a3SEmmanuel Vadot	};
599c9ccf3a3SEmmanuel Vadot
600c9ccf3a3SEmmanuel Vadot	sdio-pwrseq {
601c9ccf3a3SEmmanuel Vadot		wifi_enable_h: wifi-enable-h {
602c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
603c9ccf3a3SEmmanuel Vadot		};
604c9ccf3a3SEmmanuel Vadot	};
605c9ccf3a3SEmmanuel Vadot
606d5b0e70fSEmmanuel Vadot	tcpc {
607d5b0e70fSEmmanuel Vadot		tcpc_int_l: tcpc-int-l {
608d5b0e70fSEmmanuel Vadot			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
609d5b0e70fSEmmanuel Vadot		};
610d5b0e70fSEmmanuel Vadot	};
611d5b0e70fSEmmanuel Vadot
612c9ccf3a3SEmmanuel Vadot	vcc-wl {
613c9ccf3a3SEmmanuel Vadot		vcc_wl_pin: vcc-wl-pin {
614c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
615c9ccf3a3SEmmanuel Vadot		};
616c9ccf3a3SEmmanuel Vadot	};
617c9ccf3a3SEmmanuel Vadot
618c9ccf3a3SEmmanuel Vadot	wifi {
619c9ccf3a3SEmmanuel Vadot		wifi_host_wake_l: wifi-host-wake-l {
620c9ccf3a3SEmmanuel Vadot			rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
621c9ccf3a3SEmmanuel Vadot		};
622c9ccf3a3SEmmanuel Vadot	};
623c9ccf3a3SEmmanuel Vadot};
624c9ccf3a3SEmmanuel Vadot
625c9ccf3a3SEmmanuel Vadot&pmu_io_domains {
626c9ccf3a3SEmmanuel Vadot	pmuio1-supply = <&vcc_3v3_pmu>;
627c9ccf3a3SEmmanuel Vadot	pmuio2-supply = <&vcc_3v3_pmu>;
628c9ccf3a3SEmmanuel Vadot	vccio1-supply = <&vccio_acodec>;
629c9ccf3a3SEmmanuel Vadot	vccio2-supply = <&vcc_1v8>;
630c9ccf3a3SEmmanuel Vadot	vccio3-supply = <&vcc_3v3>;
631c9ccf3a3SEmmanuel Vadot	vccio4-supply = <&vcca_1v8_pmu>;
632c9ccf3a3SEmmanuel Vadot	vccio5-supply = <&vcc_3v3>;
633c9ccf3a3SEmmanuel Vadot	vccio6-supply = <&vcc_3v3>;
634c9ccf3a3SEmmanuel Vadot	status = "okay";
635c9ccf3a3SEmmanuel Vadot};
636c9ccf3a3SEmmanuel Vadot
637c9ccf3a3SEmmanuel Vadot&saradc {
638c9ccf3a3SEmmanuel Vadot	vref-supply = <&vcc_1v8>;
639c9ccf3a3SEmmanuel Vadot	status = "okay";
640c9ccf3a3SEmmanuel Vadot};
641c9ccf3a3SEmmanuel Vadot
642c9ccf3a3SEmmanuel Vadot&sdhci {
643c9ccf3a3SEmmanuel Vadot	bus-width = <8>;
644c9ccf3a3SEmmanuel Vadot	mmc-hs200-1_8v;
645c9ccf3a3SEmmanuel Vadot	non-removable;
646c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&emmc_bus8>, <&emmc_clk>, <&emmc_cmd>, <&emmc_datastrobe>, <&emmc_rstnout>;
647c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
648c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&vcc_3v3>;
649c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&vcc_1v8>;
650c9ccf3a3SEmmanuel Vadot	status = "okay";
651c9ccf3a3SEmmanuel Vadot};
652c9ccf3a3SEmmanuel Vadot
653c9ccf3a3SEmmanuel Vadot&sdmmc1 {
654c9ccf3a3SEmmanuel Vadot	bus-width = <4>;
655c9ccf3a3SEmmanuel Vadot	cap-sd-highspeed;
656c9ccf3a3SEmmanuel Vadot	cap-sdio-irq;
657c9ccf3a3SEmmanuel Vadot	keep-power-in-suspend;
658c9ccf3a3SEmmanuel Vadot	mmc-pwrseq = <&sdio_pwrseq>;
659c9ccf3a3SEmmanuel Vadot	non-removable;
660c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&sdmmc1_bus4>, <&sdmmc1_clk>, <&sdmmc1_cmd>;
661c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
662c9ccf3a3SEmmanuel Vadot	sd-uhs-sdr104;
663c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&vcc_wl>;
664c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&vcca_1v8_pmu>;
665c9ccf3a3SEmmanuel Vadot	status = "okay";
666c9ccf3a3SEmmanuel Vadot};
667c9ccf3a3SEmmanuel Vadot
668c9ccf3a3SEmmanuel Vadot&tsadc {
669c9ccf3a3SEmmanuel Vadot	/* tshut mode 0:CRU 1:GPIO */
670c9ccf3a3SEmmanuel Vadot	rockchip,hw-tshut-mode = <1>;
671c9ccf3a3SEmmanuel Vadot	/* tshut polarity 0:LOW 1:HIGH */
672c9ccf3a3SEmmanuel Vadot	rockchip,hw-tshut-polarity = <0>;
673c9ccf3a3SEmmanuel Vadot	status = "okay";
674c9ccf3a3SEmmanuel Vadot};
675c9ccf3a3SEmmanuel Vadot
676c9ccf3a3SEmmanuel Vadot&uart1 {
677c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&uart1m0_ctsn>, <&uart1m0_rtsn>, <&uart1m0_xfer>;
678c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
679c9ccf3a3SEmmanuel Vadot	uart-has-rtscts;
680c9ccf3a3SEmmanuel Vadot	status = "okay";
681c9ccf3a3SEmmanuel Vadot
682c9ccf3a3SEmmanuel Vadot	bluetooth {
683c9ccf3a3SEmmanuel Vadot		compatible = "brcm,bcm43438-bt";
684c9ccf3a3SEmmanuel Vadot		clocks = <&rk817 1>;
685c9ccf3a3SEmmanuel Vadot		clock-names = "lpo";
686c9ccf3a3SEmmanuel Vadot		device-wake-gpios = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>;
687c9ccf3a3SEmmanuel Vadot		host-wake-gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_HIGH>;
688c9ccf3a3SEmmanuel Vadot		reset-gpios = <&gpio0 RK_PC4 GPIO_ACTIVE_LOW>;
689c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&bt_enable_h>, <&bt_host_wake_l>, <&bt_wake_h>;
690c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
691c9ccf3a3SEmmanuel Vadot		vbat-supply = <&vcc_wl>;
692c9ccf3a3SEmmanuel Vadot		vddio-supply = <&vcca_1v8_pmu>;
693c9ccf3a3SEmmanuel Vadot	};
694c9ccf3a3SEmmanuel Vadot};
695c9ccf3a3SEmmanuel Vadot
696c9ccf3a3SEmmanuel Vadot&uart2 {
697c9ccf3a3SEmmanuel Vadot	status = "okay";
698c9ccf3a3SEmmanuel Vadot};
699d5b0e70fSEmmanuel Vadot
700d5b0e70fSEmmanuel Vadot&usb_host0_xhci {
701d5b0e70fSEmmanuel Vadot	dr_mode = "otg";
702d5b0e70fSEmmanuel Vadot	status = "okay";
703d5b0e70fSEmmanuel Vadot};
704d5b0e70fSEmmanuel Vadot
705d5b0e70fSEmmanuel Vadot&usb2phy0 {
706d5b0e70fSEmmanuel Vadot	status = "okay";
707d5b0e70fSEmmanuel Vadot};
708d5b0e70fSEmmanuel Vadot
709d5b0e70fSEmmanuel Vadot&usb2phy0_otg {
710d5b0e70fSEmmanuel Vadot	status = "okay";
711d5b0e70fSEmmanuel Vadot
712d5b0e70fSEmmanuel Vadot	port {
713d5b0e70fSEmmanuel Vadot		usb2phy0_typec_hs: endpoint {
714d5b0e70fSEmmanuel Vadot			remote-endpoint = <&typec_hs_usb2phy0>;
715d5b0e70fSEmmanuel Vadot		};
716d5b0e70fSEmmanuel Vadot	};
717d5b0e70fSEmmanuel Vadot};
718