xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (c) 2020 Rockchip Electronics Co., Ltd.
4*4882a593Smuzhiyun */
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun/dts-v1/;
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
9*4882a593Smuzhiyun#include <dt-bindings/pinctrl/rockchip.h>
10*4882a593Smuzhiyun#include "rk3566.dtsi"
11*4882a593Smuzhiyun#include "rk3566-evb.dtsi"
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun/ {
14*4882a593Smuzhiyun	model = "Rockchip RK3566 EVB1 DDR4 V10 Board";
15*4882a593Smuzhiyun	compatible = "rockchip,rk3566-evb1-ddr4-v10", "rockchip,rk3566";
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun	vcc3v3_pcie: gpio-regulator {
18*4882a593Smuzhiyun		compatible = "regulator-fixed";
19*4882a593Smuzhiyun		regulator-name = "vcc3v3_pcie";
20*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
21*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
22*4882a593Smuzhiyun		enable-active-high;
23*4882a593Smuzhiyun		gpio = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
24*4882a593Smuzhiyun		startup-delay-us = <5000>;
25*4882a593Smuzhiyun		vin-supply = <&dc_12v>;
26*4882a593Smuzhiyun	};
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun	vcc3v3_vga: vcc3v3-vga {
29*4882a593Smuzhiyun		compatible = "regulator-fixed";
30*4882a593Smuzhiyun		regulator-name = "vcc3v3_vga";
31*4882a593Smuzhiyun		regulator-always-on;
32*4882a593Smuzhiyun		regulator-boot-on;
33*4882a593Smuzhiyun		gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>;
34*4882a593Smuzhiyun		enable-active-high;
35*4882a593Smuzhiyun		vin-supply = <&vcc3v3_sys>;
36*4882a593Smuzhiyun	};
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun	vcc_camera: vcc-camera-regulator {
39*4882a593Smuzhiyun		compatible = "regulator-fixed";
40*4882a593Smuzhiyun		gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;
41*4882a593Smuzhiyun		pinctrl-names = "default";
42*4882a593Smuzhiyun		pinctrl-0 = <&camera_pwr>;
43*4882a593Smuzhiyun		regulator-name = "vcc_camera";
44*4882a593Smuzhiyun		enable-active-high;
45*4882a593Smuzhiyun		regulator-always-on;
46*4882a593Smuzhiyun		regulator-boot-on;
47*4882a593Smuzhiyun	};
48*4882a593Smuzhiyun};
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun&bt_sound {
51*4882a593Smuzhiyun	status = "disabled";
52*4882a593Smuzhiyun	simple-audio-card,cpu {
53*4882a593Smuzhiyun		sound-dai = <&i2s2_2ch>;
54*4882a593Smuzhiyun	};
55*4882a593Smuzhiyun};
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun&audiopwmout_diff {
58*4882a593Smuzhiyun	status = "disabled";
59*4882a593Smuzhiyun};
60*4882a593Smuzhiyun
61*4882a593Smuzhiyun&combphy1_usq {
62*4882a593Smuzhiyun	status = "okay";
63*4882a593Smuzhiyun};
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun&combphy2_psq {
66*4882a593Smuzhiyun	status = "okay";
67*4882a593Smuzhiyun};
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun&csi2_dphy_hw {
70*4882a593Smuzhiyun	status = "okay";
71*4882a593Smuzhiyun};
72*4882a593Smuzhiyun
73*4882a593Smuzhiyun&csi2_dphy1 {
74*4882a593Smuzhiyun	status = "okay";
75*4882a593Smuzhiyun
76*4882a593Smuzhiyun	/*
77*4882a593Smuzhiyun	 * dphy1 only used for split mode,
78*4882a593Smuzhiyun	 * can be used  concurrently  with dphy2
79*4882a593Smuzhiyun	 * full mode and split mode are mutually exclusive
80*4882a593Smuzhiyun	 */
81*4882a593Smuzhiyun	ports {
82*4882a593Smuzhiyun		#address-cells = <1>;
83*4882a593Smuzhiyun		#size-cells = <0>;
84*4882a593Smuzhiyun
85*4882a593Smuzhiyun		port@0 {
86*4882a593Smuzhiyun			reg = <0>;
87*4882a593Smuzhiyun			#address-cells = <1>;
88*4882a593Smuzhiyun			#size-cells = <0>;
89*4882a593Smuzhiyun
90*4882a593Smuzhiyun			dphy1_in: endpoint@1 {
91*4882a593Smuzhiyun				reg = <1>;
92*4882a593Smuzhiyun				remote-endpoint = <&ov5695_out>;
93*4882a593Smuzhiyun				data-lanes = <1 2>;
94*4882a593Smuzhiyun			};
95*4882a593Smuzhiyun		};
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun		port@1 {
98*4882a593Smuzhiyun			reg = <1>;
99*4882a593Smuzhiyun			#address-cells = <1>;
100*4882a593Smuzhiyun			#size-cells = <0>;
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun			dphy1_out: endpoint@1 {
103*4882a593Smuzhiyun				reg = <1>;
104*4882a593Smuzhiyun				remote-endpoint = <&isp0_in>;
105*4882a593Smuzhiyun			};
106*4882a593Smuzhiyun		};
107*4882a593Smuzhiyun	};
108*4882a593Smuzhiyun};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun&csi2_dphy2 {
111*4882a593Smuzhiyun	status = "okay";
112*4882a593Smuzhiyun
113*4882a593Smuzhiyun	/*
114*4882a593Smuzhiyun	 * dphy2 only used for split mode,
115*4882a593Smuzhiyun	 * can be used  concurrently  with dphy1
116*4882a593Smuzhiyun	 * full mode and split mode are mutually exclusive
117*4882a593Smuzhiyun	 */
118*4882a593Smuzhiyun	ports {
119*4882a593Smuzhiyun		#address-cells = <1>;
120*4882a593Smuzhiyun		#size-cells = <0>;
121*4882a593Smuzhiyun
122*4882a593Smuzhiyun		port@0 {
123*4882a593Smuzhiyun			reg = <0>;
124*4882a593Smuzhiyun			#address-cells = <1>;
125*4882a593Smuzhiyun			#size-cells = <0>;
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun			dphy2_in: endpoint@1 {
128*4882a593Smuzhiyun				reg = <1>;
129*4882a593Smuzhiyun				remote-endpoint = <&ov02k10_out>;
130*4882a593Smuzhiyun				data-lanes = <1 2>;
131*4882a593Smuzhiyun			};
132*4882a593Smuzhiyun		};
133*4882a593Smuzhiyun
134*4882a593Smuzhiyun		port@1 {
135*4882a593Smuzhiyun			reg = <1>;
136*4882a593Smuzhiyun			#address-cells = <1>;
137*4882a593Smuzhiyun			#size-cells = <0>;
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun			dphy2_out: endpoint@1 {
140*4882a593Smuzhiyun				reg = <1>;
141*4882a593Smuzhiyun				remote-endpoint = <&mipi_csi2_input>;
142*4882a593Smuzhiyun			};
143*4882a593Smuzhiyun		};
144*4882a593Smuzhiyun	};
145*4882a593Smuzhiyun};
146*4882a593Smuzhiyun
147*4882a593Smuzhiyun&dig_acodec {
148*4882a593Smuzhiyun	status = "disabled";
149*4882a593Smuzhiyun	rockchip,pwm-output-mode;
150*4882a593Smuzhiyun	pinctrl-names = "default";
151*4882a593Smuzhiyun	pinctrl-0 = <&audiopwm_loutp
152*4882a593Smuzhiyun		&audiopwm_loutn
153*4882a593Smuzhiyun		&audiopwm_routp
154*4882a593Smuzhiyun		&audiopwm_routn
155*4882a593Smuzhiyun	>;
156*4882a593Smuzhiyun};
157*4882a593Smuzhiyun
158*4882a593Smuzhiyun/*
159*4882a593Smuzhiyun * video_phy0 needs to be enabled
160*4882a593Smuzhiyun * when dsi0 is enabled
161*4882a593Smuzhiyun */
162*4882a593Smuzhiyun&dsi0 {
163*4882a593Smuzhiyun	status = "okay";
164*4882a593Smuzhiyun};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun&dsi0_in_vp0 {
167*4882a593Smuzhiyun	status = "disabled";
168*4882a593Smuzhiyun};
169*4882a593Smuzhiyun
170*4882a593Smuzhiyun&dsi0_in_vp1 {
171*4882a593Smuzhiyun	status = "okay";
172*4882a593Smuzhiyun};
173*4882a593Smuzhiyun
174*4882a593Smuzhiyun&dsi0_panel {
175*4882a593Smuzhiyun	power-supply = <&vcc3v3_lcd0_n>;
176*4882a593Smuzhiyun	reset-gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>;
177*4882a593Smuzhiyun	pinctrl-names = "default";
178*4882a593Smuzhiyun	pinctrl-0 = <&lcd0_rst_gpio>;
179*4882a593Smuzhiyun};
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun/*
182*4882a593Smuzhiyun * video_phy1 needs to be enabled
183*4882a593Smuzhiyun * when dsi1 is enabled
184*4882a593Smuzhiyun */
185*4882a593Smuzhiyun&dsi1 {
186*4882a593Smuzhiyun	status = "disabled";
187*4882a593Smuzhiyun};
188*4882a593Smuzhiyun
189*4882a593Smuzhiyun&dsi1_in_vp0 {
190*4882a593Smuzhiyun	status = "disabled";
191*4882a593Smuzhiyun};
192*4882a593Smuzhiyun
193*4882a593Smuzhiyun&dsi1_in_vp1 {
194*4882a593Smuzhiyun	status = "disabled";
195*4882a593Smuzhiyun};
196*4882a593Smuzhiyun
197*4882a593Smuzhiyun&dsi1_panel {
198*4882a593Smuzhiyun	power-supply = <&vcc3v3_lcd1_n>;
199*4882a593Smuzhiyun	reset-gpios = <&gpio4 RK_PC6 GPIO_ACTIVE_LOW>;
200*4882a593Smuzhiyun	pinctrl-names = "default";
201*4882a593Smuzhiyun	pinctrl-0 = <&lcd1_rst_gpio>;
202*4882a593Smuzhiyun};
203*4882a593Smuzhiyun
204*4882a593Smuzhiyun&edp {
205*4882a593Smuzhiyun	hpd-gpios = <&gpio4 RK_PC4 GPIO_ACTIVE_HIGH>;
206*4882a593Smuzhiyun	status = "okay";
207*4882a593Smuzhiyun};
208*4882a593Smuzhiyun
209*4882a593Smuzhiyun&edp_phy {
210*4882a593Smuzhiyun	status = "okay";
211*4882a593Smuzhiyun};
212*4882a593Smuzhiyun
213*4882a593Smuzhiyun&edp_in_vp0 {
214*4882a593Smuzhiyun	status = "okay";
215*4882a593Smuzhiyun};
216*4882a593Smuzhiyun
217*4882a593Smuzhiyun&edp_in_vp1 {
218*4882a593Smuzhiyun	status = "disabled";
219*4882a593Smuzhiyun};
220*4882a593Smuzhiyun
221*4882a593Smuzhiyun/*
222*4882a593Smuzhiyun * power-supply should switche to vcc3v3_lcd1_n
223*4882a593Smuzhiyun * when mipi panel is connected to dsi1.
224*4882a593Smuzhiyun */
225*4882a593Smuzhiyun&gt1x {
226*4882a593Smuzhiyun	power-supply = <&vcc3v3_lcd0_n>;
227*4882a593Smuzhiyun};
228*4882a593Smuzhiyun
229*4882a593Smuzhiyun&i2c2 {
230*4882a593Smuzhiyun	status = "okay";
231*4882a593Smuzhiyun	pinctrl-names = "default";
232*4882a593Smuzhiyun	pinctrl-0 = <&i2c2m1_xfer>;
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun	/* split mode: lane0/1 */
235*4882a593Smuzhiyun	ov5695: ov5695@36 {
236*4882a593Smuzhiyun		status = "okay";
237*4882a593Smuzhiyun		compatible = "ovti,ov5695";
238*4882a593Smuzhiyun		reg = <0x36>;
239*4882a593Smuzhiyun		clocks = <&cru CLK_CAM0_OUT>;
240*4882a593Smuzhiyun		clock-names = "xvclk";
241*4882a593Smuzhiyun		power-domains = <&power RK3568_PD_VI>;
242*4882a593Smuzhiyun		pinctrl-names = "default";
243*4882a593Smuzhiyun		pinctrl-0 = <&cam_clkout0>;
244*4882a593Smuzhiyun		reset-gpios = <&gpio4 RK_PC0 GPIO_ACTIVE_HIGH>;
245*4882a593Smuzhiyun		pwdn-gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
246*4882a593Smuzhiyun		/*power-gpios = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;*/
247*4882a593Smuzhiyun		rockchip,camera-module-index = <0>;
248*4882a593Smuzhiyun		rockchip,camera-module-facing = "back";
249*4882a593Smuzhiyun		rockchip,camera-module-name = "TongJu";
250*4882a593Smuzhiyun		rockchip,camera-module-lens-name = "CHT842-MD";
251*4882a593Smuzhiyun		port {
252*4882a593Smuzhiyun			ov5695_out: endpoint {
253*4882a593Smuzhiyun				remote-endpoint = <&dphy1_in>;
254*4882a593Smuzhiyun				data-lanes = <1 2>;
255*4882a593Smuzhiyun			};
256*4882a593Smuzhiyun		};
257*4882a593Smuzhiyun	};
258*4882a593Smuzhiyun
259*4882a593Smuzhiyun	ov02k10: ov02k10@36 {
260*4882a593Smuzhiyun		status = "okay";
261*4882a593Smuzhiyun		compatible = "ovti,ov02k10";
262*4882a593Smuzhiyun		reg = <0x36>;
263*4882a593Smuzhiyun		clocks = <&cru CLK_CAM1_OUT>;
264*4882a593Smuzhiyun		clock-names = "xvclk";
265*4882a593Smuzhiyun		pinctrl-names = "default";
266*4882a593Smuzhiyun		pinctrl-0 = <&cam_clkout1>;
267*4882a593Smuzhiyun		reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>;
268*4882a593Smuzhiyun		pwdn-gpios = <&gpio2 RK_PC6 GPIO_ACTIVE_HIGH>;
269*4882a593Smuzhiyun		power-gpios = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;
270*4882a593Smuzhiyun		rockchip,camera-module-index = <0>;
271*4882a593Smuzhiyun		rockchip,camera-module-facing = "back";
272*4882a593Smuzhiyun		rockchip,camera-module-name = "TongJu";
273*4882a593Smuzhiyun		rockchip,camera-module-lens-name = "CHT842-MD";
274*4882a593Smuzhiyun		port {
275*4882a593Smuzhiyun			ov02k10_out: endpoint {
276*4882a593Smuzhiyun				remote-endpoint = <&dphy2_in>;
277*4882a593Smuzhiyun				data-lanes = <1 2>;
278*4882a593Smuzhiyun			};
279*4882a593Smuzhiyun		};
280*4882a593Smuzhiyun	};
281*4882a593Smuzhiyun};
282*4882a593Smuzhiyun
283*4882a593Smuzhiyun&i2s2_2ch {
284*4882a593Smuzhiyun	pinctrl-0 = <&i2s2m1_sclktx &i2s2m1_lrcktx &i2s2m1_sdi &i2s2m1_sdo>;
285*4882a593Smuzhiyun	rockchip,bclk-fs = <32>;
286*4882a593Smuzhiyun	status = "disabled";
287*4882a593Smuzhiyun};
288*4882a593Smuzhiyun
289*4882a593Smuzhiyun&i2s3_2ch {
290*4882a593Smuzhiyun	status = "disabled";
291*4882a593Smuzhiyun};
292*4882a593Smuzhiyun
293*4882a593Smuzhiyun&mipi_csi2 {
294*4882a593Smuzhiyun	status = "okay";
295*4882a593Smuzhiyun
296*4882a593Smuzhiyun	ports {
297*4882a593Smuzhiyun		#address-cells = <1>;
298*4882a593Smuzhiyun		#size-cells = <0>;
299*4882a593Smuzhiyun
300*4882a593Smuzhiyun		port@0 {
301*4882a593Smuzhiyun			reg = <0>;
302*4882a593Smuzhiyun			#address-cells = <1>;
303*4882a593Smuzhiyun			#size-cells = <0>;
304*4882a593Smuzhiyun
305*4882a593Smuzhiyun			mipi_csi2_input: endpoint@1 {
306*4882a593Smuzhiyun				reg = <1>;
307*4882a593Smuzhiyun				remote-endpoint = <&dphy2_out>;
308*4882a593Smuzhiyun				data-lanes = <1 2>;
309*4882a593Smuzhiyun			};
310*4882a593Smuzhiyun		};
311*4882a593Smuzhiyun
312*4882a593Smuzhiyun		port@1 {
313*4882a593Smuzhiyun			reg = <1>;
314*4882a593Smuzhiyun			#address-cells = <1>;
315*4882a593Smuzhiyun			#size-cells = <0>;
316*4882a593Smuzhiyun
317*4882a593Smuzhiyun			mipi_csi2_output: endpoint@0 {
318*4882a593Smuzhiyun				reg = <0>;
319*4882a593Smuzhiyun				remote-endpoint = <&cif_mipi_in>;
320*4882a593Smuzhiyun				data-lanes = <1 2>;
321*4882a593Smuzhiyun			};
322*4882a593Smuzhiyun		};
323*4882a593Smuzhiyun	};
324*4882a593Smuzhiyun};
325*4882a593Smuzhiyun
326*4882a593Smuzhiyun&video_phy0 {
327*4882a593Smuzhiyun	status = "okay";
328*4882a593Smuzhiyun};
329*4882a593Smuzhiyun
330*4882a593Smuzhiyun&video_phy1 {
331*4882a593Smuzhiyun	status = "disabled";
332*4882a593Smuzhiyun};
333*4882a593Smuzhiyun
334*4882a593Smuzhiyun&pcie2x1 {
335*4882a593Smuzhiyun	reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
336*4882a593Smuzhiyun	vpcie3v3-supply = <&vcc3v3_pcie>;
337*4882a593Smuzhiyun	status = "okay";
338*4882a593Smuzhiyun};
339*4882a593Smuzhiyun
340*4882a593Smuzhiyun&pdm {
341*4882a593Smuzhiyun	status = "disabled";
342*4882a593Smuzhiyun	pinctrl-names = "default";
343*4882a593Smuzhiyun	pinctrl-0 = <&pdmm1_clk1
344*4882a593Smuzhiyun		     &pdmm1_sdi1
345*4882a593Smuzhiyun		     &pdmm1_sdi2
346*4882a593Smuzhiyun		     &pdmm1_sdi3>;
347*4882a593Smuzhiyun};
348*4882a593Smuzhiyun
349*4882a593Smuzhiyun&pdmics {
350*4882a593Smuzhiyun	status = "disabled";
351*4882a593Smuzhiyun};
352*4882a593Smuzhiyun
353*4882a593Smuzhiyun&pdm_mic_array {
354*4882a593Smuzhiyun	status = "disabled";
355*4882a593Smuzhiyun};
356*4882a593Smuzhiyun
357*4882a593Smuzhiyun&rkcif {
358*4882a593Smuzhiyun	status = "okay";
359*4882a593Smuzhiyun};
360*4882a593Smuzhiyun
361*4882a593Smuzhiyun&rkcif_mipi_lvds {
362*4882a593Smuzhiyun	status = "okay";
363*4882a593Smuzhiyun
364*4882a593Smuzhiyun	port {
365*4882a593Smuzhiyun		cif_mipi_in: endpoint {
366*4882a593Smuzhiyun			remote-endpoint = <&mipi_csi2_output>;
367*4882a593Smuzhiyun			data-lanes = <1 2>;
368*4882a593Smuzhiyun		};
369*4882a593Smuzhiyun	};
370*4882a593Smuzhiyun};
371*4882a593Smuzhiyun
372*4882a593Smuzhiyun&rkcif_mmu {
373*4882a593Smuzhiyun	status = "okay";
374*4882a593Smuzhiyun};
375*4882a593Smuzhiyun
376*4882a593Smuzhiyun&rkisp {
377*4882a593Smuzhiyun	status = "okay";
378*4882a593Smuzhiyun};
379*4882a593Smuzhiyun
380*4882a593Smuzhiyun&rkisp_mmu {
381*4882a593Smuzhiyun	status = "okay";
382*4882a593Smuzhiyun};
383*4882a593Smuzhiyun
384*4882a593Smuzhiyun&rkisp_vir0 {
385*4882a593Smuzhiyun	status = "okay";
386*4882a593Smuzhiyun
387*4882a593Smuzhiyun	port {
388*4882a593Smuzhiyun		#address-cells = <1>;
389*4882a593Smuzhiyun		#size-cells = <0>;
390*4882a593Smuzhiyun
391*4882a593Smuzhiyun		isp0_in: endpoint@0 {
392*4882a593Smuzhiyun			reg = <0>;
393*4882a593Smuzhiyun			remote-endpoint = <&dphy1_out>;
394*4882a593Smuzhiyun		};
395*4882a593Smuzhiyun	};
396*4882a593Smuzhiyun};
397*4882a593Smuzhiyun
398*4882a593Smuzhiyun&route_dsi0 {
399*4882a593Smuzhiyun	status = "okay";
400*4882a593Smuzhiyun	connect = <&vp1_out_dsi0>;
401*4882a593Smuzhiyun};
402*4882a593Smuzhiyun
403*4882a593Smuzhiyun&sdmmc2 {
404*4882a593Smuzhiyun	max-frequency = <150000000>;
405*4882a593Smuzhiyun	no-sd;
406*4882a593Smuzhiyun	no-mmc;
407*4882a593Smuzhiyun	bus-width = <4>;
408*4882a593Smuzhiyun	disable-wp;
409*4882a593Smuzhiyun	cap-sd-highspeed;
410*4882a593Smuzhiyun	cap-sdio-irq;
411*4882a593Smuzhiyun	keep-power-in-suspend;
412*4882a593Smuzhiyun	mmc-pwrseq = <&sdio_pwrseq>;
413*4882a593Smuzhiyun	non-removable;
414*4882a593Smuzhiyun	pinctrl-names = "default";
415*4882a593Smuzhiyun	pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>;
416*4882a593Smuzhiyun	sd-uhs-sdr104;
417*4882a593Smuzhiyun	status = "okay";
418*4882a593Smuzhiyun};
419*4882a593Smuzhiyun
420*4882a593Smuzhiyun&uart1 {
421*4882a593Smuzhiyun	status = "okay";
422*4882a593Smuzhiyun	pinctrl-names = "default";
423*4882a593Smuzhiyun	pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn>;
424*4882a593Smuzhiyun};
425*4882a593Smuzhiyun
426*4882a593Smuzhiyun&vcc3v3_lcd0_n {
427*4882a593Smuzhiyun	gpio = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>;
428*4882a593Smuzhiyun	enable-active-high;
429*4882a593Smuzhiyun};
430*4882a593Smuzhiyun
431*4882a593Smuzhiyun&vcc3v3_lcd1_n {
432*4882a593Smuzhiyun	gpio = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>;
433*4882a593Smuzhiyun	enable-active-high;
434*4882a593Smuzhiyun};
435*4882a593Smuzhiyun
436*4882a593Smuzhiyun&wireless_bluetooth {
437*4882a593Smuzhiyun	uart_rts_gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_LOW>;
438*4882a593Smuzhiyun	pinctrl-names = "default", "rts_gpio";
439*4882a593Smuzhiyun	pinctrl-0 = <&uart1m1_rtsn>;
440*4882a593Smuzhiyun	pinctrl-1 = <&uart1_gpios>;
441*4882a593Smuzhiyun	BT,reset_gpio    = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
442*4882a593Smuzhiyun	BT,wake_gpio     = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
443*4882a593Smuzhiyun	BT,wake_host_irq = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
444*4882a593Smuzhiyun	status = "okay";
445*4882a593Smuzhiyun};
446*4882a593Smuzhiyun
447*4882a593Smuzhiyun&wireless_wlan {
448*4882a593Smuzhiyun	pinctrl-names = "default";
449*4882a593Smuzhiyun	pinctrl-0 = <&wifi_host_wake_irq>;
450*4882a593Smuzhiyun	WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>;
451*4882a593Smuzhiyun};
452*4882a593Smuzhiyun
453*4882a593Smuzhiyun&work_led {
454*4882a593Smuzhiyun	gpios = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>;
455*4882a593Smuzhiyun};
456*4882a593Smuzhiyun
457*4882a593Smuzhiyun&pinctrl {
458*4882a593Smuzhiyun	cam {
459*4882a593Smuzhiyun		camera_pwr: camera-pwr {
460*4882a593Smuzhiyun			rockchip,pins =
461*4882a593Smuzhiyun				/* camera power en */
462*4882a593Smuzhiyun				<0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
463*4882a593Smuzhiyun		};
464*4882a593Smuzhiyun	};
465*4882a593Smuzhiyun
466*4882a593Smuzhiyun	lcd0 {
467*4882a593Smuzhiyun		lcd0_rst_gpio: lcd0-rst-gpio {
468*4882a593Smuzhiyun			rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
469*4882a593Smuzhiyun		};
470*4882a593Smuzhiyun	};
471*4882a593Smuzhiyun
472*4882a593Smuzhiyun	lcd1 {
473*4882a593Smuzhiyun		lcd1_rst_gpio: lcd1-rst-gpio {
474*4882a593Smuzhiyun			rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
475*4882a593Smuzhiyun		};
476*4882a593Smuzhiyun	};
477*4882a593Smuzhiyun
478*4882a593Smuzhiyun	wireless-wlan {
479*4882a593Smuzhiyun		wifi_host_wake_irq: wifi-host-wake-irq {
480*4882a593Smuzhiyun			rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>;
481*4882a593Smuzhiyun		};
482*4882a593Smuzhiyun	};
483*4882a593Smuzhiyun
484*4882a593Smuzhiyun	wireless-bluetooth {
485*4882a593Smuzhiyun		uart1_gpios: uart1-gpios {
486*4882a593Smuzhiyun			rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
487*4882a593Smuzhiyun		};
488*4882a593Smuzhiyun	};
489*4882a593Smuzhiyun};
490