xref: /rk3399_rockchip-uboot/arch/arm/dts/rk3288-evb-rk1608.dtsi (revision aee63dc84c1f5be59ea35ceb209a4ea937bdeb41)
1/*
2 * (C) Copyright 2017 Rockchip Electronics Co., Ltd
3 *
4 * SPDX-License-Identifier:     GPL-2.0+ X11
5 */
6
7#include "rk3288.dtsi"
8
9/ {
10	memory {
11		reg = <0 0x80000000>;
12	};
13
14	ext_gmac: external-gmac-clock {
15		compatible = "fixed-clock";
16		#clock-cells = <0>;
17		clock-frequency = <125000000>;
18		clock-output-names = "ext_gmac";
19	};
20
21	vcc_sys: vsys-regulator {
22		compatible = "regulator-fixed";
23		regulator-name = "vcc_sys";
24		regulator-min-microvolt = <5000000>;
25		regulator-max-microvolt = <5000000>;
26		regulator-always-on;
27		regulator-boot-on;
28	};
29
30	vcc_flash: flash-regulator {
31		compatible = "regulator-fixed";
32		regulator-name = "vcc_flash";
33		regulator-min-microvolt = <1800000>;
34		regulator-max-microvolt = <1800000>;
35		vin-supply = <&vcc_io>;
36	};
37
38	vcc_5v: usb-regulator {
39		compatible = "regulator-fixed";
40		regulator-name = "vcc_5v";
41		regulator-min-microvolt = <5000000>;
42		regulator-max-microvolt = <5000000>;
43		regulator-always-on;
44		regulator-boot-on;
45		vin-supply = <&vcc_sys>;
46	};
47
48	vcc_host_5v: usb-host-regulator {
49		compatible = "regulator-fixed";
50		enable-active-high;
51		gpio = <&gpio0 14 GPIO_ACTIVE_HIGH>;
52		pinctrl-names = "default";
53		pinctrl-0 = <&host_vbus_drv>;
54		regulator-name = "vcc_host_5v";
55		regulator-min-microvolt = <5000000>;
56		regulator-max-microvolt = <5000000>;
57		regulator-always-on;
58		vin-supply = <&vcc_5v>;
59	};
60
61	vcc_otg_5v: usb-otg-regulator {
62		compatible = "regulator-fixed";
63		enable-active-high;
64		gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>;
65		pinctrl-names = "default";
66		pinctrl-0 = <&otg_vbus_drv>;
67		regulator-name = "vcc_otg_5v";
68		regulator-min-microvolt = <5000000>;
69		regulator-max-microvolt = <5000000>;
70		regulator-always-on;
71		vin-supply = <&vcc_5v>;
72	};
73
74	backlight: backlight {
75		compatible = "pwm-backlight";
76		power-supply = <&vcc_sys>;
77		enable-gpios = <&gpio7 2 GPIO_ACTIVE_HIGH>;
78		brightness-levels = <
79			  0   1   2   3   4   5   6   7
80			  8   9  10  11  12  13  14  15
81			 16  17  18  19  20  21  22  23
82			 24  25  26  27  28  29  30  31
83			 32  33  34  35  36  37  38  39
84			 40  41  42  43  44  45  46  47
85			 48  49  50  51  52  53  54  55
86			 56  57  58  59  60  61  62  63
87			 64  65  66  67  68  69  70  71
88			 72  73  74  75  76  77  78  79
89			 80  81  82  83  84  85  86  87
90			 88  89  90  91  92  93  94  95
91			 96  97  98  99 100 101 102 103
92			104 105 106 107 108 109 110 111
93			112 113 114 115 116 117 118 119
94			120 121 122 123 124 125 126 127
95			128 129 130 131 132 133 134 135
96			136 137 138 139 140 141 142 143
97			144 145 146 147 148 149 150 151
98			152 153 154 155 156 157 158 159
99			160 161 162 163 164 165 166 167
100			168 169 170 171 172 173 174 175
101			176 177 178 179 180 181 182 183
102			184 185 186 187 188 189 190 191
103			192 193 194 195 196 197 198 199
104			200 201 202 203 204 205 206 207
105			208 209 210 211 212 213 214 215
106			216 217 218 219 220 221 222 223
107			224 225 226 227 228 229 230 231
108			232 233 234 235 236 237 238 239
109			240 241 242 243 244 245 246 247
110			248 249 250 251 252 253 254 255>;
111		default-brightness-level = <50>;
112		pwms = <&pwm0 0 25000 0>;
113		pinctrl-names = "default";
114		pinctrl-0 = <&pwm0_pin>;
115		pwm-delay-us = <10000>;
116		status = "disabled";
117	};
118
119	panel: panel {
120		compatible = "simple-panel";
121		power-supply = <&vcc_io>;
122		backlight = <&backlight>;
123		enable-gpios = <&gpio7 3 GPIO_ACTIVE_HIGH>;
124		status = "disabled";
125	};
126};
127
128&cpu0 {
129	cpu0-supply = <&vdd_cpu>;
130};
131
132&emmc {
133	broken-cd;
134	bus-width = <8>;
135	cap-mmc-highspeed;
136	disable-wp;
137	non-removable;
138	num-slots = <1>;
139	pinctrl-names = "default";
140	pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_pwr>, <&emmc_bus8>;
141	vmmc-supply = <&vcc_io>;
142	vqmmc-supply = <&vcc_flash>;
143	status = "okay";
144};
145
146&gmac {
147	phy-mode = "rgmii";
148	clock_in_out = "input";
149	snps,reset-gpio = <&gpio4 7 0>;
150	snps,reset-active-low;
151	snps,reset-delays-us = <0 10000 1000000>;
152	assigned-clocks = <&cru SCLK_MAC>;
153	assigned-clock-parents = <&ext_gmac>;
154	pinctrl-names = "default";
155	pinctrl-0 = <&rgmii_pins>;
156	tx_delay = <0x30>;
157	rx_delay = <0x10>;
158	status = "okay";
159};
160
161&i2c0 {
162	clock-frequency = <400000>;
163	status = "okay";
164
165	vdd_cpu: syr827@40 {
166		compatible = "silergy,syr827";
167		fcs,suspend-voltage-selector = <1>;
168		reg = <0x40>;
169		regulator-name = "vdd_cpu";
170		regulator-min-microvolt = <850000>;
171		regulator-max-microvolt = <1350000>;
172		regulator-always-on;
173		regulator-boot-on;
174		vin-supply = <&vcc_sys>;
175	};
176
177	vdd_gpu: syr828@41 {
178		compatible = "silergy,syr828";
179		fcs,suspend-voltage-selector = <1>;
180		reg = <0x41>;
181		regulator-name = "vdd_gpu";
182		regulator-min-microvolt = <850000>;
183		regulator-max-microvolt = <1350000>;
184		regulator-always-on;
185		vin-supply = <&vcc_sys>;
186	};
187
188	hym8563: hym8563@51 {
189		compatible = "haoyu,hym8563";
190		reg = <0x51>;
191		#clock-cells = <0>;
192		clock-frequency = <32768>;
193		clock-output-names = "xin32k";
194		interrupt-parent = <&gpio7>;
195		interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
196		pinctrl-names = "default";
197		pinctrl-0 = <&rtc_int>;
198	};
199
200	act8846: act8846@5a {
201		compatible = "active-semi,act8846";
202		reg = <0x5a>;
203		pinctrl-names = "default";
204		pinctrl-0 = <&pwr_hold>;
205		system-power-controller;
206
207		regulators {
208			vcc_ddr: REG1 {
209				regulator-name = "vcc_ddr";
210				regulator-min-microvolt = <1200000>;
211				regulator-max-microvolt = <1200000>;
212				regulator-always-on;
213			};
214
215			vcc_io: REG2 {
216				regulator-name = "vcc_io";
217				regulator-min-microvolt = <3300000>;
218				regulator-max-microvolt = <3300000>;
219				regulator-always-on;
220			};
221
222			vdd_log: REG3 {
223				regulator-name = "vdd_log";
224				regulator-min-microvolt = <1100000>;
225				regulator-max-microvolt = <1100000>;
226				regulator-always-on;
227			};
228
229			vcc_20: REG4 {
230				regulator-name = "vcc_20";
231				regulator-min-microvolt = <2000000>;
232				regulator-max-microvolt = <2000000>;
233				regulator-always-on;
234			};
235
236			vccio_sd: REG5 {
237				regulator-name = "vccio_sd";
238				regulator-min-microvolt = <3300000>;
239				regulator-max-microvolt = <3300000>;
240				regulator-always-on;
241			};
242
243			vdd10_lcd: REG6 {
244				regulator-name = "vdd10_lcd";
245				regulator-min-microvolt = <1000000>;
246				regulator-max-microvolt = <1000000>;
247				regulator-always-on;
248			};
249
250			vcca_codec: REG7 {
251				regulator-name = "vcca_codec";
252				regulator-min-microvolt = <3300000>;
253				regulator-max-microvolt = <3300000>;
254			};
255
256			vcc_tp: REG8 {
257				regulator-name = "vcca_33";
258				regulator-min-microvolt = <3300000>;
259				regulator-max-microvolt = <3300000>;
260			};
261
262			vccio_pmu: REG9 {
263				regulator-name = "vccio_pmu";
264				regulator-min-microvolt = <3300000>;
265				regulator-max-microvolt = <3300000>;
266			};
267
268			vdd_10: REG10 {
269				regulator-name = "vdd_10";
270				regulator-min-microvolt = <1000000>;
271				regulator-max-microvolt = <1000000>;
272				regulator-always-on;
273			};
274
275			vcc_18: REG11 {
276				regulator-name = "vcc_18";
277				regulator-min-microvolt = <1800000>;
278				regulator-max-microvolt = <1800000>;
279				regulator-always-on;
280			};
281
282			vcc18_lcd: REG12 {
283				regulator-name = "vcc18_lcd";
284				regulator-min-microvolt = <1800000>;
285				regulator-max-microvolt = <1800000>;
286				regulator-always-on;
287			};
288		};
289	};
290};
291
292&i2c1 {
293	status = "okay";
294};
295
296&i2c2 {
297	status = "okay";
298};
299
300&i2c4 {
301	status = "okay";
302};
303
304&i2c5 {
305	status = "okay";
306};
307
308&pinctrl {
309	pcfg_output_high: pcfg-output-high {
310		output-high;
311	};
312
313	pcfg_output_low: pcfg-output-low {
314		output-low;
315	};
316
317	act8846 {
318		pwr_hold: pwr-hold {
319			rockchip,pins = <0 9 RK_FUNC_GPIO &pcfg_output_high>;
320		};
321	};
322
323	hym8563 {
324		rtc_int: rtc-int {
325			rockchip,pins = <0 4 RK_FUNC_GPIO &pcfg_pull_up>;
326		};
327	};
328
329	sdmmc {
330		sdmmc_pwr: sdmmc-pwr {
331			rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>;
332		};
333	};
334
335	usb_host {
336		host_vbus_drv: host-vbus-drv {
337			rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>;
338		};
339	};
340
341	usb_otg {
342		otg_vbus_drv: otg-vbus-drv {
343			rockchip,pins = <0 12 RK_FUNC_GPIO &pcfg_pull_none>;
344		};
345	};
346};
347
348&pwm0 {
349	status = "okay";
350};
351
352&saradc {
353	vref-supply = <&vcc_18>;
354	status = "okay";
355};
356
357&sdio0 {
358	broken-cd;
359	bus-width = <4>;
360	disable-wp;
361	non-removable;
362	num-slots = <1>;
363	pinctrl-names = "default";
364	pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>;
365	vmmc-supply = <&vcc_18>;
366	status = "disabled";
367};
368
369&sdmmc {
370	bus-width = <4>;
371	cap-mmc-highspeed;
372	cap-sd-highspeed;
373	card-detect-delay = <200>;
374	disable-wp;
375	num-slots = <1>;
376	pinctrl-names = "default";
377	pinctrl-0 = <&sdmmc_clk>, <&sdmmc_cmd>, <&sdmmc_cd>, <&sdmmc_bus4>;
378	vmmc-supply = <&vccio_sd>;
379	status = "okay";
380};
381
382&spi0 {
383	pinctrl-names = "default";
384	pinctrl-0 = <&spi0_clk>, <&spi0_cs0>, <&spi0_tx>, <&spi0_rx>, <&spi0_cs1>;
385	status = "okay";
386};
387
388&uart0 {
389	pinctrl-names = "default";
390	pinctrl-0 = <&uart0_xfer>, <&uart0_cts>, <&uart0_rts>;
391	status = "okay";
392};
393
394&uart1 {
395	status = "okay";
396};
397
398&uart2 {
399	status = "okay";
400};
401
402&uart3 {
403	status = "okay";
404};
405
406&usb_host1 {
407	status = "okay";
408};
409
410&usb_otg {
411	status = "okay";
412};
413
414&vopb {
415	status = "okay";
416};
417
418&vopb_mmu {
419	status = "okay";
420};
421
422&vopl {
423	status = "okay";
424};
425
426&vopl_mmu {
427	status = "okay";
428};
429
430&mipi_dsi0 {
431	status = "disabled";
432	rockchip,panel = <&panel>;
433	display-timings {
434		timing0 {
435			bits-per-pixel = <24>;
436			clock-frequency = <160000000>;
437			hfront-porch = <120>;
438			hsync-len = <20>;
439			hback-porch = <21>;
440			hactive = <1200>;
441			vfront-porch = <21>;
442			vsync-len = <3>;
443			vback-porch = <18>;
444			vactive = <1920>;
445			hsync-active = <0>;
446			vsync-active = <0>;
447			de-active = <1>;
448			pixelclk-active = <0>;
449		};
450	};
451};
452
453&wdt {
454	status = "okay";
455};
456