]> Git Repo - u-boot.git/blame - dts/upstream/src/arm64/rockchip/rk3566-box-demo.dts
Subtree merge tag 'v6.12-dts' of dts repo [1] into dts/upstream
[u-boot.git] / dts / upstream / src / arm64 / rockchip / rk3566-box-demo.dts
CommitLineData
53633a89
TR
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3/*
4 * Author: Piotr Oniszczuk [email protected]
5 * Based on Quartz64 DT by: Peter Geis [email protected]
6 */
7
8/dts-v1/;
9
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/leds/common.h>
12#include <dt-bindings/pinctrl/rockchip.h>
13#include <dt-bindings/soc/rockchip,vop2.h>
14#include "rk3566.dtsi"
15
16/ {
17 model = "Rockchip RK3566 BOX DEMO Board";
18 compatible = "rockchip,rk3566-box-demo", "rockchip,rk3566";
19
20 aliases {
21 ethernet0 = &gmac1;
22 mmc0 = &sdmmc0;
23 mmc1 = &sdmmc1;
24 mmc2 = &sdhci;
25 };
26
27 chosen: chosen {
28 stdout-path = "serial2:1500000n8";
29 };
30
31 gmac1_clkin: external-gmac1-clock {
32 compatible = "fixed-clock";
33 clock-frequency = <125000000>;
34 clock-output-names = "gmac1_clkin";
35 #clock-cells = <0>;
36 };
37
38 hdmi-con {
39 compatible = "hdmi-connector";
40 type = "a";
41
42 port {
43 hdmi_con_in: endpoint {
44 remote-endpoint = <&hdmi_out_con>;
45 };
46 };
47 };
48
49 ir-receiver {
50 compatible = "gpio-ir-receiver";
51 gpios = <&gpio4 RK_PC3 GPIO_ACTIVE_LOW>;
52 pinctrl-0 = <&ir_int>;
53 linux,rc-map-name = "rc-beelink-gs1";
54 status = "okay";
55 };
56
57 leds {
58 compatible = "gpio-leds";
59
60 led_work: led-0 {
61 gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_HIGH>;
62 function = LED_FUNCTION_HEARTBEAT;
63 color = <LED_COLOR_ID_BLUE>;
64 linux,default-trigger = "heartbeat";
65 pinctrl-names = "default";
66 pinctrl-0 = <&led_work_en>;
67 };
68 };
69
70 sdio_pwrseq: sdio-pwrseq {
71 status = "okay";
72 compatible = "mmc-pwrseq-simple";
73 clocks = <&pmucru CLK_RTC_32K>;
74 clock-names = "ext_clock";
75 pinctrl-names = "default";
76 pinctrl-0 = <&wifi_enable_h &wifi_32k>;
77 reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
78 };
79
80 spdif_dit: spdif-dit {
81 compatible = "linux,spdif-dit";
82 #sound-dai-cells = <0>;
83 };
84
85 spdif_sound: spdif-sound {
86 compatible = "simple-audio-card";
87 simple-audio-card,name = "SPDIF";
88
89 simple-audio-card,cpu {
90 sound-dai = <&spdif>;
91 };
92
93 simple-audio-card,codec {
94 sound-dai = <&spdif_dit>;
95 };
96 };
97
98 vcc12v0_dcin: regulator-vcc12v0-dcin {
99 compatible = "regulator-fixed";
100 regulator-name = "vcc12v0_dcin";
101 regulator-always-on;
102 regulator-boot-on;
103 regulator-min-microvolt = <12000000>;
104 regulator-max-microvolt = <12000000>;
105 };
106
107 vcc5v0_sys: regulator-vcc5v0-sys {
108 compatible = "regulator-fixed";
109 regulator-name = "vcc5v0_sys";
110 regulator-always-on;
111 regulator-boot-on;
112 regulator-min-microvolt = <5000000>;
113 regulator-max-microvolt = <5000000>;
114 vin-supply = <&vcc12v0_dcin>;
115 };
116
117 vcc3v3_sys: regulator-vcc3v3-sys {
118 compatible = "regulator-fixed";
119 regulator-name = "vcc3v3_sys";
120 regulator-always-on;
121 regulator-boot-on;
122 regulator-min-microvolt = <3300000>;
123 regulator-max-microvolt = <3300000>;
124 vin-supply = <&vcc12v0_dcin>;
125 };
126
127 vcc_3v3: regulator-vcc-3v3 {
128 compatible = "regulator-fixed";
129 regulator-name = "vcc_3v3";
130 regulator-always-on;
131 regulator-boot-on;
132 regulator-min-microvolt = <3300000>;
133 regulator-max-microvolt = <3300000>;
134 vin-supply = <&vcc3v3_sys>;
135 };
136
137 vcc5v0_usb_host: regulator-vcc5v0-usb-host {
138 compatible = "regulator-fixed";
139 enable-active-high;
140 gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
141 pinctrl-names = "default";
142 pinctrl-0 = <&vcc5v0_usb_host_en>;
143 regulator-name = "vcc5v0_usb_host";
144 regulator-min-microvolt = <5000000>;
145 regulator-max-microvolt = <5000000>;
146 vin-supply = <&vcc5v0_sys>;
147 };
148
149 vcc5v0_usb2_otg: regulator-vcc5v0-usb2-otg {
150 compatible = "regulator-fixed";
151 enable-active-high;
152 gpio = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
153 pinctrl-names = "default";
154 pinctrl-0 = <&vcc5v0_usb2_otg_en>;
155 regulator-name = "vcc5v0_usb_otg";
156 regulator-min-microvolt = <5000000>;
157 regulator-max-microvolt = <5000000>;
158 vin-supply = <&vcc5v0_sys>;
159 };
160
161 vcca_1v8: regulator-vcca-1v8 {
162 compatible = "regulator-fixed";
163 regulator-name = "vcca_1v8";
164 regulator-always-on;
165 regulator-boot-on;
166 regulator-min-microvolt = <1800000>;
167 regulator-max-microvolt = <1800000>;
168 vin-supply = <&vcc3v3_sys>;
169 };
170
171 vdda_0v9: regulator-vdda-0v9 {
172 compatible = "regulator-fixed";
173 regulator-name = "vdda_0v9";
174 regulator-always-on;
175 regulator-boot-on;
176 regulator-min-microvolt = <900000>;
177 regulator-max-microvolt = <900000>;
178 vin-supply = <&vcc3v3_sys>;
179 };
180
181 vdd_fixed: regulator-vdd-fixed {
182 compatible = "regulator-fixed";
183 regulator-name = "vdd_fixed";
184 regulator-min-microvolt = <950000>;
185 regulator-max-microvolt = <950000>;
186 regulator-always-on;
187 regulator-boot-on;
188 vin-supply = <&vcc5v0_sys>;
189 };
190
191 vdd_cpu: regulator-vdd-cpu {
192 compatible = "pwm-regulator";
193 pwms = <&pwm0 0 5000 1>;
194 regulator-name = "vdd_cpu";
195 regulator-min-microvolt = <800000>;
196 regulator-max-microvolt = <1200000>;
197 regulator-always-on;
198 regulator-boot-on;
199 regulator-settling-time-up-us = <250>;
200 pwm-supply = <&vcc5v0_sys>;
201 };
202
203 vdd_logic: regulator-vdd-logic {
204 compatible = "pwm-regulator";
205 pwms = <&pwm1 0 5000 1>;
206 regulator-name = "vdd_logic";
207 regulator-min-microvolt = <800000>;
208 regulator-max-microvolt = <1100000>;
209 regulator-always-on;
210 regulator-boot-on;
211 regulator-settling-time-up-us = <250>;
212 pwm-supply = <&vcc5v0_sys>;
213 };
214};
215
216&combphy1 {
217 status = "okay";
218};
219
220&combphy2 {
221 status = "okay";
222};
223
224&cpu0 {
225 cpu-supply = <&vdd_cpu>;
226};
227
228&cpu1 {
229 cpu-supply = <&vdd_cpu>;
230};
231
232&cpu2 {
233 cpu-supply = <&vdd_cpu>;
234};
235
236&cpu3 {
237 cpu-supply = <&vdd_cpu>;
238};
239
240&gmac1 {
241 assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>;
242 assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&gmac1_clkin>;
243 phy-mode = "rgmii";
244 clock_in_out = "input";
245 pinctrl-names = "default";
246 pinctrl-0 = <&gmac1m1_miim
247 &gmac1m1_tx_bus2
248 &gmac1m1_rx_bus2
249 &gmac1m1_rgmii_clk
250 &gmac1m1_rgmii_bus
251 &gmac1m1_clkinout>;
252 snps,reset-gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>;
253 snps,reset-active-low;
254 /* Reset time is 20ms, 100ms for rtl8211f */
255 snps,reset-delays-us = <0 20000 100000>;
256
257 tx_delay = <0x4f>;
258 rx_delay = <0x2d>;
259 phy-handle = <&rgmii_phy1>;
260 status = "okay";
261};
262
263&mdio1 {
264 rgmii_phy1: ethernet-phy@1 {
265 compatible = "ethernet-phy-ieee802.3-c22";
266 reg = <0x1>;
267 };
268};
269
270&hdmi {
271 assigned-clocks = <&cru CLK_HDMI_CEC>;
272 assigned-clock-rates = <32768>;
273 avdd-0v9-supply = <&vdda_0v9>;
274 avdd-1v8-supply = <&vcca_1v8>;
275 status = "okay";
276};
277
278&hdmi_in {
279 hdmi_in_vp0: endpoint {
280 remote-endpoint = <&vp0_out_hdmi>;
281 };
282};
283
284&hdmi_out {
285 hdmi_out_con: endpoint {
286 remote-endpoint = <&hdmi_con_in>;
287 };
288};
289
290&hdmi_sound {
291 status = "okay";
292};
293
294&gpu {
295 status = "okay";
296};
297
298&i2s0_8ch {
299 status = "okay";
300};
301
302&i2s1_8ch {
303 rockchip,trcm-sync-tx-only;
304 status = "okay";
305};
306
307&pinctrl {
308 bt {
309 bt_enable_h: bt-enable-h {
310 rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
311 };
312
313 bt_host_wake_l: bt-host-wake-l {
314 rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_down>;
315 };
316
317 bt_wake_l: bt-wake-l {
318 rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
319 };
320 };
321
322 sdio-pwrseq {
323 wifi_enable_h: wifi-enable-h {
324 rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
325 };
326
327 wifi_host_wake_h: wifi-host-wake-l {
328 rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
329 };
330
331 wifi_32k: wifi-32k {
332 rockchip,pins = <2 RK_PC6 1 &pcfg_pull_none>;
333 };
334 };
335
336 usb {
337 vcc5v0_usb_host_en: vcc5v0_usb_host_en {
338 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
339 };
340
341 vcc5v0_usb2_otg_en: vcc5v0_usb2_otg_en {
342 rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
343 };
344
345 };
346
347 ir {
348 ir_int: ir-int {
349 rockchip,pins = <4 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
350 };
351 };
352
353 led {
354 led_work_en: led_work_en {
355 rockchip,pins = <0 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
356 };
357 };
358};
359
360&pmu_io_domains {
361 pmuio2-supply = <&vcc_3v3>;
362 vccio1-supply = <&vcc_3v3>;
363 vccio3-supply = <&vcc_3v3>;
364 vccio4-supply = <&vcca_1v8>;
365 vccio5-supply = <&vcc_3v3>;
366 vccio6-supply = <&vcca_1v8>;
367 vccio7-supply = <&vcc_3v3>;
368 status = "okay";
369};
370
371&pwm0 {
372 status = "okay";
373};
374
375&pwm1 {
376 status = "okay";
377};
378
379&sdhci {
380 bus-width = <8>;
381 mmc-hs200-1_8v;
382 non-removable;
383 status = "okay";
384};
385
386&sdmmc0 {
387 bus-width = <4>;
388 cap-sd-highspeed;
389 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
390 disable-wp;
391 pinctrl-names = "default";
392 pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
393 vmmc-supply = <&vcc_3v3>;
394 status = "okay";
395};
396
397&sdmmc1 {
398 /* WiFi & BT combo module AMPAK AP6398S */
399 #address-cells = <1>;
400 #size-cells = <0>;
401 bus-width = <4>;
402 clock-frequency = <150000000>;
403 cap-sdio-irq;
404 cap-sd-highspeed;
405 sd-uhs-sdr104;
406 keep-power-in-suspend;
407 mmc-pwrseq = <&sdio_pwrseq>;
408 non-removable;
409 pinctrl-names = "default";
410 pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
411 vmmc-supply = <&vcc_3v3>;
412 vqmmc-supply = <&vcca_1v8>;
413 status = "okay";
414
415 brcmf: wifi@1 {
416 compatible = "brcm,bcm4329-fmac";
417 reg = <1>;
418 interrupt-parent = <&gpio2>;
419 interrupts = <RK_PB2 IRQ_TYPE_LEVEL_HIGH>;
420 interrupt-names = "host-wake";
421 pinctrl-names = "default";
422 pinctrl-0 = <&wifi_host_wake_h>;
423 };
424};
425
426&spdif {
427 status = "okay";
428};
429
430&spi1 {
431 pinctrl-names = "default";
432 pinctrl-0 = <&spi1m1_cs0 &spi1m1_pins>;
433};
434
435&tsadc {
436 /* tshut mode 0:CRU 1:GPIO */
437 rockchip,hw-tshut-mode = <1>;
438 /* tshut polarity 0:LOW 1:HIGH */
439 rockchip,hw-tshut-polarity = <0>;
440 status = "okay";
441};
442
443&uart1 {
444 pinctrl-names = "default";
445 pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn>;
446 status = "okay";
447 uart-has-rtscts;
448
449 bluetooth {
450 compatible = "brcm,bcm43438-bt";
451 clocks = <&pmucru CLK_RTC_32K>;
9c8af15f
TR
452 clock-names = "txco";
453 device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
454 host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
53633a89
TR
455 shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
456 pinctrl-names = "default";
457 pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
458 vbat-supply = <&vcc3v3_sys>;
459 vddio-supply = <&vcca_1v8>;
460 };
461};
462
463&uart2 {
464 status = "okay";
465};
466
467&vop {
468 assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
469 assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
470 status = "okay";
471};
472
473&vop_mmu {
474 status = "okay";
475};
476
477&vp0 {
478 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
479 reg = <ROCKCHIP_VOP2_EP_HDMI0>;
480 remote-endpoint = <&hdmi_in_vp0>;
481 };
482};
483
484&vpu {
485 status = "okay";
486};
487
488&vdpu_mmu {
489 status = "okay";
490};
491
492&usb2phy0_host {
493 phy-supply = <&vcc5v0_usb_host>;
494 status = "okay";
495};
496
497&usb2phy0_otg {
498 phy-supply = <&vcc5v0_usb2_otg>;
499 status = "okay";
500};
501
502&usb2phy1_host {
503 phy-supply = <&vcc5v0_usb_host>;
504 status = "okay";
505};
506
507&usb2phy1_otg {
508 phy-supply = <&vcc5v0_usb_host>;
509 status = "okay";
510};
511
512&usb2phy1 {
513 status = "okay";
514};
515
516&usb_host0_ehci {
517 status = "okay";
518};
519
520&usb_host0_ohci {
521 status = "okay";
522};
523
524&usb_host1_ehci {
525 status = "okay";
526};
527
528&usb_host1_ohci {
529 status = "okay";
530};
531
532&usb_host1_xhci {
533 status = "okay";
534};
This page took 0.224527 seconds and 4 git commands to generate.