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