xref: /rk3399_rockchip-uboot/arch/arm/dts/rk3399-evb.dts (revision df8fe99cf20ed2bf0d33e00177a35cbd3bddb6a4)
1777c834fSKever Yang/*
2777c834fSKever Yang * (C) Copyright 2016 Rockchip Electronics Co., Ltd
3777c834fSKever Yang *
4777c834fSKever Yang * SPDX-License-Identifier:     GPL-2.0+
5777c834fSKever Yang */
6777c834fSKever Yang
7777c834fSKever Yang/dts-v1/;
8777c834fSKever Yang#include <dt-bindings/pwm/pwm.h>
9fd9884e2SKever Yang#include <dt-bindings/pinctrl/rockchip.h>
10777c834fSKever Yang#include "rk3399.dtsi"
11a82426e0SKever Yang#include "rk3399-sdram-lpddr3-4GB-1600.dtsi"
12777c834fSKever Yang
13777c834fSKever Yang/ {
14777c834fSKever Yang	model = "Rockchip RK3399 Evaluation Board";
15777c834fSKever Yang	compatible = "rockchip,rk3399-evb", "rockchip,rk3399",
16777c834fSKever Yang		     "google,rk3399evb-rev2";
17777c834fSKever Yang
18777c834fSKever Yang	chosen {
19777c834fSKever Yang		stdout-path = &uart2;
20777c834fSKever Yang	};
21777c834fSKever Yang
22777c834fSKever Yang	vdd_center: vdd-center {
23777c834fSKever Yang		compatible = "pwm-regulator";
2426b1edf4SKever Yang		pwms = <&pwm3 0 25000 1>;
25777c834fSKever Yang		regulator-name = "vdd_center";
26777c834fSKever Yang		regulator-min-microvolt = <800000>;
27777c834fSKever Yang		regulator-max-microvolt = <1400000>;
28c553de90SKever Yang		regulator-init-microvolt = <950000>;
29777c834fSKever Yang		regulator-always-on;
30777c834fSKever Yang		regulator-boot-on;
31777c834fSKever Yang		status = "okay";
32777c834fSKever Yang	};
33777c834fSKever Yang
34d3cf9eb2Seric.gao@rock-chips.com	vccsys: vccsys {
35d3cf9eb2Seric.gao@rock-chips.com		compatible = "regulator-fixed";
36d3cf9eb2Seric.gao@rock-chips.com		regulator-name = "vccsys";
37d3cf9eb2Seric.gao@rock-chips.com		regulator-boot-on;
38d3cf9eb2Seric.gao@rock-chips.com		regulator-always-on;
39d3cf9eb2Seric.gao@rock-chips.com	};
40d3cf9eb2Seric.gao@rock-chips.com
41777c834fSKever Yang	vcc3v3_sys: vcc3v3-sys {
42777c834fSKever Yang		compatible = "regulator-fixed";
43777c834fSKever Yang		regulator-name = "vcc3v3_sys";
44777c834fSKever Yang		regulator-always-on;
45777c834fSKever Yang		regulator-boot-on;
46777c834fSKever Yang		regulator-min-microvolt = <3300000>;
47777c834fSKever Yang		regulator-max-microvolt = <3300000>;
48777c834fSKever Yang	};
49777c834fSKever Yang
50777c834fSKever Yang	vcc_phy: vcc-phy-regulator {
51777c834fSKever Yang		compatible = "regulator-fixed";
52777c834fSKever Yang		regulator-name = "vcc_phy";
53777c834fSKever Yang		regulator-always-on;
54777c834fSKever Yang		regulator-boot-on;
55777c834fSKever Yang	};
56b850d929SKever Yang
57b850d929SKever Yang	vcc5v0_host: vcc5v0-host-en {
58b850d929SKever Yang		compatible = "regulator-fixed";
59b850d929SKever Yang		regulator-name = "vcc5v0_host";
60b850d929SKever Yang		gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
61b850d929SKever Yang	};
62d3cf9eb2Seric.gao@rock-chips.com
63fd9884e2SKever Yang	clkin_gmac: external-gmac-clock {
64fd9884e2SKever Yang		compatible = "fixed-clock";
65fd9884e2SKever Yang		clock-frequency = <125000000>;
66fd9884e2SKever Yang		clock-output-names = "clkin_gmac";
67fd9884e2SKever Yang		#clock-cells = <0>;
68fd9884e2SKever Yang	};
69*df8fe99cSEric Gao
70*df8fe99cSEric Gao	backlight: backlight {
71*df8fe99cSEric Gao		compatible = "pwm-backlight";
72*df8fe99cSEric Gao		power-supply = <&vccsys>;
73*df8fe99cSEric Gao		enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
74*df8fe99cSEric Gao		brightness-levels = <
75*df8fe99cSEric Gao			  0   1   2   3   4   5   6   7
76*df8fe99cSEric Gao			  8   9  10  11  12  13  14  15
77*df8fe99cSEric Gao			 16  17  18  19  20  21  22  23
78*df8fe99cSEric Gao			 24  25  26  27  28  29  30  31
79*df8fe99cSEric Gao			 32  33  34  35  36  37  38  39
80*df8fe99cSEric Gao			 40  41  42  43  44  45  46  47
81*df8fe99cSEric Gao			 48  49  50  51  52  53  54  55
82*df8fe99cSEric Gao			 56  57  58  59  60  61  62  63
83*df8fe99cSEric Gao			 64  65  66  67  68  69  70  71
84*df8fe99cSEric Gao			 72  73  74  75  76  77  78  79
85*df8fe99cSEric Gao			 80  81  82  83  84  85  86  87
86*df8fe99cSEric Gao			 88  89  90  91  92  93  94  95
87*df8fe99cSEric Gao			 96  97  98  99 100 101 102 103
88*df8fe99cSEric Gao			104 105 106 107 108 109 110 111
89*df8fe99cSEric Gao			112 113 114 115 116 117 118 119
90*df8fe99cSEric Gao			120 121 122 123 124 125 126 127
91*df8fe99cSEric Gao			128 129 130 131 132 133 134 135
92*df8fe99cSEric Gao			136 137 138 139 140 141 142 143
93*df8fe99cSEric Gao			144 145 146 147 148 149 150 151
94*df8fe99cSEric Gao			152 153 154 155 156 157 158 159
95*df8fe99cSEric Gao			160 161 162 163 164 165 166 167
96*df8fe99cSEric Gao			168 169 170 171 172 173 174 175
97*df8fe99cSEric Gao			176 177 178 179 180 181 182 183
98*df8fe99cSEric Gao			184 185 186 187 188 189 190 191
99*df8fe99cSEric Gao			192 193 194 195 196 197 198 199
100*df8fe99cSEric Gao			200 201 202 203 204 205 206 207
101*df8fe99cSEric Gao			208 209 210 211 212 213 214 215
102*df8fe99cSEric Gao			216 217 218 219 220 221 222 223
103*df8fe99cSEric Gao			224 225 226 227 228 229 230 231
104*df8fe99cSEric Gao			232 233 234 235 236 237 238 239
105*df8fe99cSEric Gao			240 241 242 243 244 245 246 247
106*df8fe99cSEric Gao			248 249 250 251 252 253 254 255>;
107*df8fe99cSEric Gao		default-brightness-level = <200>;
108*df8fe99cSEric Gao		pwms = <&pwm0 0 25000 0>;
109*df8fe99cSEric Gao		pinctrl-names = "default";
110*df8fe99cSEric Gao		pinctrl-0 = <&pwm0_pin>;
111*df8fe99cSEric Gao		pwm-delay-us = <10000>;
112*df8fe99cSEric Gao		status = "disabled";
113*df8fe99cSEric Gao	};
114*df8fe99cSEric Gao
115*df8fe99cSEric Gao	panel:panel {
116*df8fe99cSEric Gao		compatible = "simple-panel";
117*df8fe99cSEric Gao		power-supply = <&vcc33_lcd>;
118*df8fe99cSEric Gao		backlight = <&backlight>;
119*df8fe99cSEric Gao		/*enable-gpios = <&gpio4 18 GPIO_ACTIVE_HIGH>;*/
120*df8fe99cSEric Gao		status = "disabled";
121*df8fe99cSEric Gao	};
122777c834fSKever Yang};
123777c834fSKever Yang
124777c834fSKever Yang&emmc_phy {
125777c834fSKever Yang	status = "okay";
126777c834fSKever Yang};
127777c834fSKever Yang
128777c834fSKever Yang&pwm0 {
129777c834fSKever Yang	status = "okay";
130777c834fSKever Yang};
131777c834fSKever Yang
132777c834fSKever Yang&pwm2 {
133777c834fSKever Yang	status = "okay";
134777c834fSKever Yang};
135777c834fSKever Yang
136777c834fSKever Yang&pwm3 {
137777c834fSKever Yang	status = "okay";
138777c834fSKever Yang};
139777c834fSKever Yang
140da8ff82eSKever Yang&sdmmc {
141a82426e0SKever Yang	bus-width = <4>;
142da8ff82eSKever Yang	status = "okay";
143da8ff82eSKever Yang};
144da8ff82eSKever Yang
145777c834fSKever Yang&sdhci {
146777c834fSKever Yang	bus-width = <8>;
147777c834fSKever Yang	mmc-hs400-1_8v;
148777c834fSKever Yang	mmc-hs400-enhanced-strobe;
149777c834fSKever Yang	non-removable;
150777c834fSKever Yang	status = "okay";
151777c834fSKever Yang};
152777c834fSKever Yang
153777c834fSKever Yang&uart2 {
154777c834fSKever Yang	status = "okay";
155777c834fSKever Yang};
156777c834fSKever Yang
157777c834fSKever Yang&usb_host0_ehci {
158777c834fSKever Yang	status = "okay";
159777c834fSKever Yang};
160777c834fSKever Yang
161777c834fSKever Yang&usb_host0_ohci {
162777c834fSKever Yang	status = "okay";
163777c834fSKever Yang};
164777c834fSKever Yang
165fa5e2d16SMengDongyang&dwc3_typec0 {
166aad10a04SPhilipp Tomsich	rockchip,vbus-gpio = <&gpio1 3 GPIO_ACTIVE_HIGH>;
167fa5e2d16SMengDongyang	status = "okay";
168fa5e2d16SMengDongyang};
169fa5e2d16SMengDongyang
170777c834fSKever Yang&usb_host1_ehci {
171777c834fSKever Yang	status = "okay";
172777c834fSKever Yang};
173777c834fSKever Yang
174777c834fSKever Yang&usb_host1_ohci {
175777c834fSKever Yang	status = "okay";
176777c834fSKever Yang};
177777c834fSKever Yang
178fa5e2d16SMengDongyang&dwc3_typec1 {
179aad10a04SPhilipp Tomsich	rockchip,vbus-gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
180fa5e2d16SMengDongyang	status = "okay";
181fa5e2d16SMengDongyang};
182fa5e2d16SMengDongyang
183d3cf9eb2Seric.gao@rock-chips.com&i2c0 {
184d3cf9eb2Seric.gao@rock-chips.com	status = "okay";
185d3cf9eb2Seric.gao@rock-chips.com	clock-frequency = <400000>;
186d3cf9eb2Seric.gao@rock-chips.com	i2c-scl-falling-time-ns = <50>;
187d3cf9eb2Seric.gao@rock-chips.com	i2c-scl-rising-time-ns = <100>;
188d3cf9eb2Seric.gao@rock-chips.com	u-boot,dm-pre-reloc;
189d3cf9eb2Seric.gao@rock-chips.com
190d3cf9eb2Seric.gao@rock-chips.com	rk808: pmic@1b {
191d3cf9eb2Seric.gao@rock-chips.com		compatible = "rockchip,rk808";
192d3cf9eb2Seric.gao@rock-chips.com		clock-output-names = "xin32k", "wifibt_32kin";
193d3cf9eb2Seric.gao@rock-chips.com		interrupt-parent = <&gpio0>;
194d3cf9eb2Seric.gao@rock-chips.com		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
195d3cf9eb2Seric.gao@rock-chips.com		pinctrl-names = "default";
196d3cf9eb2Seric.gao@rock-chips.com		pinctrl-0 = <&pmic_int_l>;
197d3cf9eb2Seric.gao@rock-chips.com		reg = <0x1b>;
198d3cf9eb2Seric.gao@rock-chips.com		rockchip,system-power-controller;
199d3cf9eb2Seric.gao@rock-chips.com		#clock-cells = <1>;
200d3cf9eb2Seric.gao@rock-chips.com		u-boot,dm-pre-reloc;
201d3cf9eb2Seric.gao@rock-chips.com		status = "okay";
202d3cf9eb2Seric.gao@rock-chips.com
203d3cf9eb2Seric.gao@rock-chips.com		vcc12-supply = <&vcc3v3_sys>;
204*df8fe99cSEric Gao
205d3cf9eb2Seric.gao@rock-chips.com		regulators {
206d3cf9eb2Seric.gao@rock-chips.com			vcc33_lcd: SWITCH_REG2 {
207d3cf9eb2Seric.gao@rock-chips.com				regulator-always-on;
208d3cf9eb2Seric.gao@rock-chips.com				regulator-boot-on;
209d3cf9eb2Seric.gao@rock-chips.com				regulator-name = "vcc33_lcd";
210d3cf9eb2Seric.gao@rock-chips.com			};
211d3cf9eb2Seric.gao@rock-chips.com		};
212d3cf9eb2Seric.gao@rock-chips.com	};
213d3cf9eb2Seric.gao@rock-chips.com};
214d3cf9eb2Seric.gao@rock-chips.com
215*df8fe99cSEric Gao&mipi_dsi {
216*df8fe99cSEric Gao	status = "disabled";
217*df8fe99cSEric Gao	rockchip,panel = <&panel>;
218*df8fe99cSEric Gao	display-timings {
219*df8fe99cSEric Gao		timing0 {
220*df8fe99cSEric Gao		bits-per-pixel = <24>;
221*df8fe99cSEric Gao		clock-frequency = <160000000>;
222*df8fe99cSEric Gao		hfront-porch = <120>;
223*df8fe99cSEric Gao		hsync-len = <20>;
224*df8fe99cSEric Gao		hback-porch = <21>;
225*df8fe99cSEric Gao		hactive = <1200>;
226*df8fe99cSEric Gao		vfront-porch = <21>;
227*df8fe99cSEric Gao		vsync-len = <3>;
228*df8fe99cSEric Gao		vback-porch = <18>;
229*df8fe99cSEric Gao		vactive = <1920>;
230*df8fe99cSEric Gao		hsync-active = <0>;
231*df8fe99cSEric Gao		vsync-active = <0>;
232*df8fe99cSEric Gao		de-active = <1>;
233*df8fe99cSEric Gao		pixelclk-active = <0>;
234*df8fe99cSEric Gao		};
235*df8fe99cSEric Gao	};
236*df8fe99cSEric Gao};
237*df8fe99cSEric Gao
238777c834fSKever Yang&pinctrl {
239777c834fSKever Yang	pmic {
240777c834fSKever Yang		pmic_int_l: pmic-int-l {
241777c834fSKever Yang			rockchip,pins =
242777c834fSKever Yang				<1 21 RK_FUNC_GPIO &pcfg_pull_up>;
243777c834fSKever Yang		};
244777c834fSKever Yang
245777c834fSKever Yang		pmic_dvs2: pmic-dvs2 {
246777c834fSKever Yang			rockchip,pins =
247777c834fSKever Yang				<1 18 RK_FUNC_GPIO &pcfg_pull_down>;
248777c834fSKever Yang		};
249777c834fSKever Yang	};
250777c834fSKever Yang};
251fd9884e2SKever Yang
252fd9884e2SKever Yang&gmac {
253fd9884e2SKever Yang        phy-supply = <&vcc_phy>;
254fd9884e2SKever Yang	phy-mode = "rgmii";
255fd9884e2SKever Yang	clock_in_out = "input";
256fd9884e2SKever Yang	snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
257fd9884e2SKever Yang	snps,reset-active-low;
258fd9884e2SKever Yang	snps,reset-delays-us = <0 10000 50000>;
259fd9884e2SKever Yang	assigned-clocks = <&cru SCLK_RMII_SRC>;
260fd9884e2SKever Yang	assigned-clock-parents = <&clkin_gmac>;
261fd9884e2SKever Yang	pinctrl-names = "default";
262fd9884e2SKever Yang	pinctrl-0 = <&rgmii_pins>;
263fd9884e2SKever Yang	tx_delay = <0x10>;
264fd9884e2SKever Yang	rx_delay = <0x10>;
265fd9884e2SKever Yang	status = "okay";
266fd9884e2SKever Yang};
267fd9884e2SKever Yang
268fd9884e2SKever Yang&gmac {
269fd9884e2SKever Yang        phy-supply = <&vcc_phy>;
270fd9884e2SKever Yang	phy-mode = "rgmii";
271fd9884e2SKever Yang	clock_in_out = "input";
272fd9884e2SKever Yang	snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
273fd9884e2SKever Yang	snps,reset-active-low;
274fd9884e2SKever Yang	snps,reset-delays-us = <0 10000 50000>;
275fd9884e2SKever Yang	assigned-clocks = <&cru SCLK_RMII_SRC>;
276fd9884e2SKever Yang	assigned-clock-parents = <&clkin_gmac>;
277fd9884e2SKever Yang	pinctrl-names = "default";
278fd9884e2SKever Yang	pinctrl-0 = <&rgmii_pins>;
279fd9884e2SKever Yang	tx_delay = <0x10>;
280fd9884e2SKever Yang	rx_delay = <0x10>;
281fd9884e2SKever Yang	status = "okay";
282fd9884e2SKever Yang};
283