Loading...
Note: File does not exist in v6.13.7.
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3/dts-v1/;
4
5#include "rk3036.dtsi"
6
7/ {
8 model = "Rockchip RK3036 KylinBoard";
9 compatible = "rockchip,rk3036-kylin", "rockchip,rk3036";
10
11 memory@60000000 {
12 device_type = "memory";
13 reg = <0x60000000 0x20000000>;
14 };
15
16 leds: gpio-leds {
17 compatible = "gpio-leds";
18
19 work_led: led-0 {
20 gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_HIGH>;
21 label = "kylin:red:led";
22 pinctrl-names = "default";
23 pinctrl-0 = <&led_ctl>;
24 };
25 };
26
27 sdio_pwrseq: sdio-pwrseq {
28 compatible = "mmc-pwrseq-simple";
29 pinctrl-names = "default";
30 pinctrl-0 = <&bt_wake_h>;
31
32 /*
33 * On the module itself this is one of these (depending
34 * on the actual card populated):
35 * - SDIO_RESET_L_WL_REG_ON
36 * - SDIO_RESET_L_WL_RST
37 * - SDIO_RESET_L_BT_EN
38 */
39 reset-gpios = <&gpio0 RK_PD2 GPIO_ACTIVE_LOW>, /* WL_REG_ON */
40 <&gpio0 RK_PD3 GPIO_ACTIVE_LOW>, /* WL_RST */
41 <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; /* BT_EN */
42 };
43
44 sound {
45 compatible = "simple-audio-card";
46 simple-audio-card,format = "i2s";
47 simple-audio-card,name = "rockchip,rt5616-codec";
48 simple-audio-card,mclk-fs = <512>;
49 simple-audio-card,widgets =
50 "Microphone", "Microphone Jack",
51 "Headphone", "Headphone Jack";
52 simple-audio-card,routing =
53 "MIC1", "Microphone Jack",
54 "MIC2", "Microphone Jack",
55 "Microphone Jack", "micbias1",
56 "Headphone Jack", "HPOL",
57 "Headphone Jack", "HPOR";
58
59 simple-audio-card,cpu {
60 sound-dai = <&i2s>;
61 };
62
63 simple-audio-card,codec {
64 sound-dai = <&rt5616>;
65 };
66 };
67
68 vcc_sys: vsys-regulator {
69 compatible = "regulator-fixed";
70 regulator-name = "vcc_sys";
71 regulator-min-microvolt = <5000000>;
72 regulator-max-microvolt = <5000000>;
73 regulator-always-on;
74 regulator-boot-on;
75 };
76};
77
78&acodec {
79 status = "okay";
80};
81
82&emac {
83 phy = <&phy0>;
84 phy-reset-duration = <10>; /* millisecond */
85 phy-reset-gpios = <&gpio2 RK_PC6 GPIO_ACTIVE_LOW>; /* PHY_RST */
86 pinctrl-names = "default";
87 pinctrl-0 = <&emac_xfer>, <&emac_mdio>;
88 status = "okay";
89
90 mdio {
91 #address-cells = <1>;
92 #size-cells = <0>;
93
94 phy0: ethernet-phy@0 {
95 reg = <0>;
96 };
97 };
98};
99
100&emmc {
101 status = "okay";
102};
103
104&gpu {
105 mali-supply = <&vdd_gpu>;
106 status = "okay";
107};
108
109&hdmi {
110 status = "okay";
111};
112
113&i2c1 {
114 clock-frequency = <400000>;
115
116 status = "okay";
117
118 rk808: pmic@1b {
119 compatible = "rockchip,rk808";
120 reg = <0x1b>;
121 interrupt-parent = <&gpio2>;
122 interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
123 pinctrl-names = "default";
124 pinctrl-0 = <&pmic_int &global_pwroff>;
125 rockchip,system-power-controller;
126 wakeup-source;
127 #clock-cells = <1>;
128 clock-output-names = "xin32k", "rk808-clkout2";
129
130 vcc1-supply = <&vcc_sys>;
131 vcc2-supply = <&vcc_sys>;
132 vcc3-supply = <&vcc_sys>;
133 vcc4-supply = <&vcc_sys>;
134 vcc6-supply = <&vcc_sys>;
135 vcc7-supply = <&vcc_sys>;
136 vcc8-supply = <&vcc_18>;
137 vcc9-supply = <&vcc_io>;
138 vcc10-supply = <&vcc_io>;
139 vcc11-supply = <&vcc_sys>;
140 vcc12-supply = <&vcc_io>;
141 vddio-supply = <&vccio_pmu>;
142
143 regulators {
144 vdd_cpu: DCDC_REG1 {
145 regulator-always-on;
146 regulator-boot-on;
147 regulator-min-microvolt = <750000>;
148 regulator-max-microvolt = <1350000>;
149 regulator-name = "vdd_arm";
150 regulator-state-mem {
151 regulator-off-in-suspend;
152 };
153 };
154
155 vdd_gpu: DCDC_REG2 {
156 regulator-always-on;
157 regulator-boot-on;
158 regulator-min-microvolt = <850000>;
159 regulator-max-microvolt = <1250000>;
160 regulator-name = "vdd_gpu";
161 regulator-state-mem {
162 regulator-on-in-suspend;
163 regulator-suspend-microvolt = <1000000>;
164 };
165 };
166
167 vcc_ddr: DCDC_REG3 {
168 regulator-always-on;
169 regulator-boot-on;
170 regulator-name = "vcc_ddr";
171 regulator-state-mem {
172 regulator-on-in-suspend;
173 };
174 };
175
176 vcc_io: DCDC_REG4 {
177 regulator-always-on;
178 regulator-boot-on;
179 regulator-min-microvolt = <3300000>;
180 regulator-max-microvolt = <3300000>;
181 regulator-name = "vcc_io";
182 regulator-state-mem {
183 regulator-on-in-suspend;
184 regulator-suspend-microvolt = <3300000>;
185 };
186 };
187
188 vccio_pmu: LDO_REG1 {
189 regulator-always-on;
190 regulator-boot-on;
191 regulator-min-microvolt = <3300000>;
192 regulator-max-microvolt = <3300000>;
193 regulator-name = "vccio_pmu";
194 regulator-state-mem {
195 regulator-on-in-suspend;
196 regulator-suspend-microvolt = <3300000>;
197 };
198 };
199
200 vcc_tp: LDO_REG2 {
201 regulator-always-on;
202 regulator-boot-on;
203 regulator-min-microvolt = <3300000>;
204 regulator-max-microvolt = <3300000>;
205 regulator-name = "vcc_tp";
206 regulator-state-mem {
207 regulator-off-in-suspend;
208 };
209 };
210
211 vdd_10: LDO_REG3 {
212 regulator-always-on;
213 regulator-boot-on;
214 regulator-min-microvolt = <1000000>;
215 regulator-max-microvolt = <1000000>;
216 regulator-name = "vdd_10";
217 regulator-state-mem {
218 regulator-on-in-suspend;
219 regulator-suspend-microvolt = <1000000>;
220 };
221 };
222
223 vcc18_lcd: LDO_REG4 {
224 regulator-always-on;
225 regulator-boot-on;
226 regulator-min-microvolt = <1800000>;
227 regulator-max-microvolt = <1800000>;
228 regulator-name = "vcc18_lcd";
229 regulator-state-mem {
230 regulator-on-in-suspend;
231 regulator-suspend-microvolt = <1800000>;
232 };
233 };
234
235 vccio_sd: LDO_REG5 {
236 regulator-always-on;
237 regulator-boot-on;
238 regulator-min-microvolt = <1800000>;
239 regulator-max-microvolt = <3300000>;
240 regulator-name = "vccio_sd";
241 regulator-state-mem {
242 regulator-on-in-suspend;
243 regulator-suspend-microvolt = <3300000>;
244 };
245 };
246
247 vout5: LDO_REG6 {
248 regulator-always-on;
249 regulator-boot-on;
250 regulator-min-microvolt = <1800000>;
251 regulator-max-microvolt = <2500000>;
252 regulator-name = "vout5";
253 regulator-state-mem {
254 regulator-on-in-suspend;
255 regulator-suspend-microvolt = <1800000>;
256 };
257 };
258
259 vcc_18: LDO_REG7 {
260 regulator-always-on;
261 regulator-boot-on;
262 regulator-min-microvolt = <1800000>;
263 regulator-max-microvolt = <1800000>;
264 regulator-name = "vcc_18";
265 regulator-state-mem {
266 regulator-on-in-suspend;
267 regulator-suspend-microvolt = <1800000>;
268 };
269 };
270
271 vcca_codec: LDO_REG8 {
272 regulator-always-on;
273 regulator-boot-on;
274 regulator-min-microvolt = <1800000>;
275 regulator-max-microvolt = <1800000>;
276 regulator-name = "vcca_codec";
277 regulator-state-mem {
278 regulator-on-in-suspend;
279 regulator-suspend-microvolt = <1800000>;
280 };
281 };
282
283 vcc_wl: SWITCH_REG1 {
284 regulator-always-on;
285 regulator-boot-on;
286 regulator-name = "vcc_wl";
287 regulator-state-mem {
288 regulator-on-in-suspend;
289 };
290 };
291
292 vcc_lcd: SWITCH_REG2 {
293 regulator-always-on;
294 regulator-boot-on;
295 regulator-name = "vcc_lcd";
296 regulator-state-mem {
297 regulator-on-in-suspend;
298 };
299 };
300 };
301 };
302};
303
304&i2c2 {
305 status = "okay";
306
307 rt5616: rt5616@1b {
308 compatible = "rt5616";
309 reg = <0x1b>;
310 clocks = <&cru SCLK_I2S_OUT>;
311 clock-names = "mclk";
312 #sound-dai-cells = <0>;
313 };
314};
315
316&i2s {
317 status = "okay";
318};
319
320&sdio {
321 status = "okay";
322
323 bus-width = <4>;
324 cap-sd-highspeed;
325 cap-sdio-irq;
326 rockchip,default-sample-phase = <90>;
327 keep-power-in-suspend;
328 mmc-pwrseq = <&sdio_pwrseq>;
329 non-removable;
330 pinctrl-names = "default";
331 pinctrl-0 = <&sdio_clk &sdio_cmd &sdio_bus4>;
332 sd-uhs-sdr12;
333 sd-uhs-sdr25;
334 sd-uhs-sdr50;
335 sd-uhs-sdr104;
336};
337
338&sdmmc {
339 bus-width = <4>;
340 cap-mmc-highspeed;
341 cap-sd-highspeed;
342 card-detect-delay = <200>;
343 disable-wp;
344 pinctrl-names = "default";
345 pinctrl-0 = <&sdmmc_clk>, <&sdmmc_cmd>, <&sdmmc_cd>, <&sdmmc_bus4>;
346};
347
348&uart0 {
349 status = "okay";
350};
351
352&uart2 {
353 status = "okay";
354};
355
356&usb_host {
357 status = "okay";
358};
359
360&usb_otg {
361 status = "okay";
362};
363
364&vop {
365 status = "okay";
366};
367
368&vop_mmu {
369 status = "okay";
370};
371
372&pinctrl {
373 leds {
374 led_ctl: led-ctl {
375 rockchip,pins = <2 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
376 };
377 };
378
379 pmic {
380 pmic_int: pmic-int {
381 rockchip,pins = <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_default>;
382 };
383 };
384
385 sdio {
386 bt_wake_h: bt-wake-h {
387 rockchip,pins = <2 RK_PB0 RK_FUNC_GPIO &pcfg_pull_default>;
388 };
389 };
390
391 sdmmc {
392 sdmmc_pwr: sdmmc-pwr {
393 rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
394 };
395 };
396
397 suspend {
398 global_pwroff: global-pwroff {
399 rockchip,pins = <2 RK_PA7 1 &pcfg_pull_none>;
400 };
401 };
402};