blob: b1b7f4ffb1d4a09152f9d69e33d488c81a64bbb3 [file] [log] [blame]
Jagan Teki0c169452019-05-17 15:59:41 +05301// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2019 Akash Gajjar <Akash_Gajjar@mentor.com>
4 * Copyright (c) 2019 Pragnesh Patel <Pragnesh_Patel@mentor.com>
5 */
6
7/dts-v1/;
8#include <dt-bindings/input/linux-event-codes.h>
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +00009#include <dt-bindings/leds/common.h>
Jagan Teki0c169452019-05-17 15:59:41 +053010#include <dt-bindings/pwm/pwm.h>
11#include "rk3399.dtsi"
Jagan Teki0c169452019-05-17 15:59:41 +053012
13/ {
Peter Robinson7c79b872021-07-22 16:20:42 +010014 aliases {
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000015 mmc0 = &sdhci;
16 mmc1 = &sdmmc;
Peter Robinson7c79b872021-07-22 16:20:42 +010017 };
18
Jagan Teki0c169452019-05-17 15:59:41 +053019 chosen {
20 stdout-path = "serial2:1500000n8";
21 };
22
23 clkin_gmac: external-gmac-clock {
24 compatible = "fixed-clock";
25 clock-frequency = <125000000>;
26 clock-output-names = "clkin_gmac";
27 #clock-cells = <0>;
28 };
29
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000030 leds {
31 compatible = "gpio-leds";
32 pinctrl-names = "default";
33 pinctrl-0 = <&user_led2>;
34
35 /* USER_LED2 */
36 led-0 {
37 function = LED_FUNCTION_STATUS;
38 color = <LED_COLOR_ID_BLUE>;
39 gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
40 linux,default-trigger = "heartbeat";
41 };
42 };
43
Jagan Teki5cc21182020-04-28 15:30:17 +053044 sdio_pwrseq: sdio-pwrseq {
45 compatible = "mmc-pwrseq-simple";
46 clocks = <&rk808 1>;
47 clock-names = "ext_clock";
48 pinctrl-names = "default";
49 pinctrl-0 = <&wifi_enable_h>;
50 reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
51 };
52
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000053 sound: sound {
54 compatible = "audio-graph-card";
55 label = "Analog";
56 dais = <&i2s0_p0>;
57 };
58
59 sound-dit {
60 compatible = "audio-graph-card";
61 label = "SPDIF";
62 dais = <&spdif_p0>;
63 };
64
65 spdif-dit {
66 compatible = "linux,spdif-dit";
67 #sound-dai-cells = <0>;
68
69 port {
70 dit_p0_0: endpoint {
71 remote-endpoint = <&spdif_p0_0>;
72 };
73 };
74 };
75
76 vbus_typec: vbus-typec-regulator {
Jagan Teki0c169452019-05-17 15:59:41 +053077 compatible = "regulator-fixed";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000078 enable-active-high;
79 gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
80 pinctrl-names = "default";
81 pinctrl-0 = <&vcc5v0_typec_en>;
82 regulator-name = "vbus_typec";
Jagan Teki0c169452019-05-17 15:59:41 +053083 regulator-always-on;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000084 vin-supply = <&vcc5v0_sys>;
Jagan Teki0c169452019-05-17 15:59:41 +053085 };
86
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000087 vcc12v_dcin: dc-12v {
Jagan Teki0c169452019-05-17 15:59:41 +053088 compatible = "regulator-fixed";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000089 regulator-name = "vcc12v_dcin";
Jagan Teki0c169452019-05-17 15:59:41 +053090 regulator-always-on;
91 regulator-boot-on;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000092 regulator-min-microvolt = <12000000>;
93 regulator-max-microvolt = <12000000>;
Jagan Teki0c169452019-05-17 15:59:41 +053094 };
95
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000096 vcc3v3_lan: vcc3v3-lan-regulator {
Jagan Teki5cc21182020-04-28 15:30:17 +053097 compatible = "regulator-fixed";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +000098 regulator-name = "vcc3v3_lan";
Jagan Teki5cc21182020-04-28 15:30:17 +053099 regulator-always-on;
100 regulator-boot-on;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000101 regulator-min-microvolt = <3300000>;
102 regulator-max-microvolt = <3300000>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530103 vin-supply = <&vcc3v3_sys>;
104 };
105
Jagan Teki0c169452019-05-17 15:59:41 +0530106 vcc3v3_pcie: vcc3v3-pcie-regulator {
107 compatible = "regulator-fixed";
108 enable-active-high;
109 gpio = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
110 pinctrl-names = "default";
111 pinctrl-0 = <&pcie_pwr_en>;
112 regulator-name = "vcc3v3_pcie";
113 regulator-always-on;
114 regulator-boot-on;
115 vin-supply = <&vcc5v0_sys>;
116 };
117
118 vcc3v3_sys: vcc3v3-sys {
119 compatible = "regulator-fixed";
120 regulator-name = "vcc3v3_sys";
121 regulator-always-on;
122 regulator-boot-on;
123 regulator-min-microvolt = <3300000>;
124 regulator-max-microvolt = <3300000>;
125 vin-supply = <&vcc5v0_sys>;
126 };
127
128 vcc5v0_host: vcc5v0-host-regulator {
129 compatible = "regulator-fixed";
130 enable-active-high;
131 gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
132 pinctrl-names = "default";
133 pinctrl-0 = <&vcc5v0_host_en>;
134 regulator-name = "vcc5v0_host";
135 regulator-always-on;
136 vin-supply = <&vcc5v0_sys>;
137 };
138
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000139 vcc5v0_sys: vcc-sys {
Jagan Teki0c169452019-05-17 15:59:41 +0530140 compatible = "regulator-fixed";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000141 regulator-name = "vcc5v0_sys";
Jagan Teki0c169452019-05-17 15:59:41 +0530142 regulator-always-on;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000143 regulator-boot-on;
144 regulator-min-microvolt = <5000000>;
145 regulator-max-microvolt = <5000000>;
146 vin-supply = <&vcc12v_dcin>;
Jagan Teki0c169452019-05-17 15:59:41 +0530147 };
148
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000149 vcc_0v9: vcc-0v9 {
Jagan Teki0c169452019-05-17 15:59:41 +0530150 compatible = "regulator-fixed";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000151 regulator-name = "vcc_0v9";
Jagan Teki0c169452019-05-17 15:59:41 +0530152 regulator-always-on;
153 regulator-boot-on;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000154 regulator-min-microvolt = <900000>;
155 regulator-max-microvolt = <900000>;
156 vin-supply = <&vcc3v3_sys>;
Jagan Teki0c169452019-05-17 15:59:41 +0530157 };
158
159 vdd_log: vdd-log {
160 compatible = "pwm-regulator";
161 pwms = <&pwm2 0 25000 1>;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000162 pwm-supply = <&vcc5v0_sys>;
Jagan Teki0c169452019-05-17 15:59:41 +0530163 regulator-name = "vdd_log";
164 regulator-always-on;
165 regulator-boot-on;
166 regulator-min-microvolt = <800000>;
167 regulator-max-microvolt = <1400000>;
Jagan Teki0c169452019-05-17 15:59:41 +0530168 };
169};
170
171&cpu_l0 {
172 cpu-supply = <&vdd_cpu_l>;
173};
174
175&cpu_l1 {
176 cpu-supply = <&vdd_cpu_l>;
177};
178
179&cpu_l2 {
180 cpu-supply = <&vdd_cpu_l>;
181};
182
183&cpu_l3 {
184 cpu-supply = <&vdd_cpu_l>;
185};
186
187&cpu_b0 {
188 cpu-supply = <&vdd_cpu_b>;
189};
190
191&cpu_b1 {
192 cpu-supply = <&vdd_cpu_b>;
193};
194
195&emmc_phy {
196 status = "okay";
197};
198
199&gmac {
200 assigned-clocks = <&cru SCLK_RMII_SRC>;
201 assigned-clock-parents = <&clkin_gmac>;
202 clock_in_out = "input";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000203 phy-supply = <&vcc3v3_lan>;
Jagan Teki0c169452019-05-17 15:59:41 +0530204 phy-mode = "rgmii";
205 pinctrl-names = "default";
206 pinctrl-0 = <&rgmii_pins>;
207 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
208 snps,reset-active-low;
209 snps,reset-delays-us = <0 10000 50000>;
210 tx_delay = <0x28>;
211 rx_delay = <0x11>;
212 status = "okay";
213};
214
Jagan Teki5cc21182020-04-28 15:30:17 +0530215&gpu {
216 mali-supply = <&vdd_gpu>;
217 status = "okay";
218};
219
Jagan Teki0c169452019-05-17 15:59:41 +0530220&hdmi {
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000221 avdd-0v9-supply = <&vcca0v9_hdmi>;
222 avdd-1v8-supply = <&vcca1v8_hdmi>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530223 ddc-i2c-bus = <&i2c3>;
Jagan Teki0c169452019-05-17 15:59:41 +0530224 pinctrl-names = "default";
225 pinctrl-0 = <&hdmi_cec>;
226 status = "okay";
227};
228
Jagan Teki5cc21182020-04-28 15:30:17 +0530229&hdmi_sound {
230 status = "okay";
231};
232
Jagan Teki0c169452019-05-17 15:59:41 +0530233&i2c0 {
234 clock-frequency = <400000>;
235 i2c-scl-rising-time-ns = <168>;
236 i2c-scl-falling-time-ns = <4>;
237 status = "okay";
238
239 rk808: pmic@1b {
240 compatible = "rockchip,rk808";
241 reg = <0x1b>;
242 interrupt-parent = <&gpio1>;
243 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
244 #clock-cells = <1>;
245 clock-output-names = "xin32k", "rk808-clkout2";
246 pinctrl-names = "default";
247 pinctrl-0 = <&pmic_int_l>;
248 rockchip,system-power-controller;
249 wakeup-source;
250
251 vcc1-supply = <&vcc5v0_sys>;
252 vcc2-supply = <&vcc5v0_sys>;
253 vcc3-supply = <&vcc5v0_sys>;
254 vcc4-supply = <&vcc5v0_sys>;
255 vcc6-supply = <&vcc5v0_sys>;
256 vcc7-supply = <&vcc5v0_sys>;
257 vcc8-supply = <&vcc3v3_sys>;
258 vcc9-supply = <&vcc5v0_sys>;
259 vcc10-supply = <&vcc5v0_sys>;
260 vcc11-supply = <&vcc5v0_sys>;
261 vcc12-supply = <&vcc3v3_sys>;
262 vddio-supply = <&vcc_1v8>;
263
264 regulators {
265 vdd_center: DCDC_REG1 {
266 regulator-name = "vdd_center";
267 regulator-always-on;
268 regulator-boot-on;
269 regulator-min-microvolt = <750000>;
270 regulator-max-microvolt = <1350000>;
271 regulator-ramp-delay = <6001>;
272 regulator-state-mem {
273 regulator-off-in-suspend;
274 };
275 };
276
277 vdd_cpu_l: DCDC_REG2 {
278 regulator-name = "vdd_cpu_l";
279 regulator-always-on;
280 regulator-boot-on;
281 regulator-min-microvolt = <750000>;
282 regulator-max-microvolt = <1350000>;
283 regulator-ramp-delay = <6001>;
284 regulator-state-mem {
285 regulator-off-in-suspend;
286 };
287 };
288
289 vcc_ddr: DCDC_REG3 {
290 regulator-name = "vcc_ddr";
291 regulator-always-on;
292 regulator-boot-on;
293 regulator-state-mem {
294 regulator-on-in-suspend;
295 };
296 };
297
298 vcc_1v8: DCDC_REG4 {
299 regulator-name = "vcc_1v8";
300 regulator-always-on;
301 regulator-boot-on;
302 regulator-min-microvolt = <1800000>;
303 regulator-max-microvolt = <1800000>;
304 regulator-state-mem {
305 regulator-on-in-suspend;
306 regulator-suspend-microvolt = <1800000>;
307 };
308 };
309
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000310 vcca1v8_codec: LDO_REG1 {
311 regulator-name = "vcca1v8_codec";
Jagan Teki0c169452019-05-17 15:59:41 +0530312 regulator-always-on;
313 regulator-boot-on;
314 regulator-min-microvolt = <1800000>;
315 regulator-max-microvolt = <1800000>;
316 regulator-state-mem {
317 regulator-off-in-suspend;
318 };
319 };
320
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000321 vcca1v8_hdmi: LDO_REG2 {
322 regulator-name = "vcca1v8_hdmi";
Jagan Teki0c169452019-05-17 15:59:41 +0530323 regulator-always-on;
324 regulator-boot-on;
325 regulator-min-microvolt = <1800000>;
326 regulator-max-microvolt = <1800000>;
327 regulator-state-mem {
328 regulator-off-in-suspend;
329 };
330 };
331
332 vcca_1v8: LDO_REG3 {
333 regulator-name = "vcca_1v8";
334 regulator-always-on;
335 regulator-boot-on;
336 regulator-min-microvolt = <1800000>;
337 regulator-max-microvolt = <1800000>;
338 regulator-state-mem {
339 regulator-on-in-suspend;
340 regulator-suspend-microvolt = <1800000>;
341 };
342 };
343
344 vcc_sdio: LDO_REG4 {
345 regulator-name = "vcc_sdio";
346 regulator-always-on;
347 regulator-boot-on;
348 regulator-min-microvolt = <3000000>;
349 regulator-max-microvolt = <3000000>;
350 regulator-state-mem {
351 regulator-on-in-suspend;
352 regulator-suspend-microvolt = <3000000>;
353 };
354 };
355
356 vcca3v0_codec: LDO_REG5 {
357 regulator-name = "vcca3v0_codec";
358 regulator-always-on;
359 regulator-boot-on;
360 regulator-min-microvolt = <3000000>;
361 regulator-max-microvolt = <3000000>;
362 regulator-state-mem {
363 regulator-off-in-suspend;
364 };
365 };
366
367 vcc_1v5: LDO_REG6 {
368 regulator-name = "vcc_1v5";
369 regulator-always-on;
370 regulator-boot-on;
371 regulator-min-microvolt = <1500000>;
372 regulator-max-microvolt = <1500000>;
373 regulator-state-mem {
374 regulator-on-in-suspend;
375 regulator-suspend-microvolt = <1500000>;
376 };
377 };
378
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000379 vcca0v9_hdmi: LDO_REG7 {
380 regulator-name = "vcca0v9_hdmi";
Jagan Teki0c169452019-05-17 15:59:41 +0530381 regulator-always-on;
382 regulator-boot-on;
383 regulator-min-microvolt = <900000>;
384 regulator-max-microvolt = <900000>;
385 regulator-state-mem {
386 regulator-off-in-suspend;
387 };
388 };
389
390 vcc_3v0: LDO_REG8 {
391 regulator-name = "vcc_3v0";
392 regulator-always-on;
393 regulator-boot-on;
394 regulator-min-microvolt = <3000000>;
395 regulator-max-microvolt = <3000000>;
396 regulator-state-mem {
397 regulator-on-in-suspend;
398 regulator-suspend-microvolt = <3000000>;
399 };
400 };
401
402 vcc_cam: SWITCH_REG1 {
403 regulator-name = "vcc_cam";
404 regulator-always-on;
405 regulator-boot-on;
Jagan Teki0c169452019-05-17 15:59:41 +0530406 regulator-state-mem {
407 regulator-off-in-suspend;
408 };
409 };
410
411 vcc_mipi: SWITCH_REG2 {
412 regulator-name = "vcc_mipi";
413 regulator-always-on;
414 regulator-boot-on;
Jagan Teki0c169452019-05-17 15:59:41 +0530415 regulator-state-mem {
416 regulator-off-in-suspend;
417 };
418 };
419 };
420 };
421
422 vdd_cpu_b: regulator@40 {
423 compatible = "silergy,syr827";
424 reg = <0x40>;
425 fcs,suspend-voltage-selector = <1>;
426 pinctrl-names = "default";
Peter Robinson7c79b872021-07-22 16:20:42 +0100427 pinctrl-0 = <&vsel1_pin>;
Jagan Teki0c169452019-05-17 15:59:41 +0530428 regulator-name = "vdd_cpu_b";
429 regulator-min-microvolt = <712500>;
430 regulator-max-microvolt = <1500000>;
431 regulator-ramp-delay = <1000>;
432 regulator-always-on;
433 regulator-boot-on;
434 vin-supply = <&vcc5v0_sys>;
435
436 regulator-state-mem {
437 regulator-off-in-suspend;
438 };
439 };
440
441 vdd_gpu: regulator@41 {
442 compatible = "silergy,syr828";
443 reg = <0x41>;
444 fcs,suspend-voltage-selector = <1>;
445 pinctrl-names = "default";
Peter Robinson7c79b872021-07-22 16:20:42 +0100446 pinctrl-0 = <&vsel2_pin>;
Jagan Teki0c169452019-05-17 15:59:41 +0530447 regulator-name = "vdd_gpu";
448 regulator-min-microvolt = <712500>;
449 regulator-max-microvolt = <1500000>;
450 regulator-ramp-delay = <1000>;
451 regulator-always-on;
452 regulator-boot-on;
453 vin-supply = <&vcc5v0_sys>;
454
455 regulator-state-mem {
456 regulator-off-in-suspend;
457 };
458 };
459};
460
461&i2c1 {
462 i2c-scl-rising-time-ns = <300>;
463 i2c-scl-falling-time-ns = <15>;
464 status = "okay";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000465
466 es8316: codec@11 {
467 compatible = "everest,es8316";
468 reg = <0x11>;
469 clocks = <&cru SCLK_I2S_8CH_OUT>;
470 clock-names = "mclk";
471 #sound-dai-cells = <0>;
472
473 port {
474 es8316_p0_0: endpoint {
475 remote-endpoint = <&i2s0_p0_0>;
476 };
477 };
478 };
Jagan Teki0c169452019-05-17 15:59:41 +0530479};
480
481&i2c3 {
482 i2c-scl-rising-time-ns = <450>;
483 i2c-scl-falling-time-ns = <15>;
484 status = "okay";
485};
486
487&i2c4 {
488 i2c-scl-rising-time-ns = <600>;
489 i2c-scl-falling-time-ns = <20>;
490 status = "okay";
491};
492
493&i2s0 {
Peter Robinson7c79b872021-07-22 16:20:42 +0100494 pinctrl-0 = <&i2s0_2ch_bus>;
495 rockchip,capture-channels = <2>;
496 rockchip,playback-channels = <2>;
Jagan Teki0c169452019-05-17 15:59:41 +0530497 status = "okay";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000498
499 i2s0_p0: port {
500 i2s0_p0_0: endpoint {
501 dai-format = "i2s";
502 mclk-fs = <256>;
503 remote-endpoint = <&es8316_p0_0>;
504 };
505 };
Jagan Teki0c169452019-05-17 15:59:41 +0530506};
507
508&i2s1 {
509 rockchip,playback-channels = <2>;
510 rockchip,capture-channels = <2>;
Jagan Teki0c169452019-05-17 15:59:41 +0530511};
512
513&i2s2 {
514 status = "okay";
515};
516
517&io_domains {
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000518 audio-supply = <&vcca1v8_codec>;
Jagan Teki0c169452019-05-17 15:59:41 +0530519 bt656-supply = <&vcc_3v0>;
Jagan Teki0c169452019-05-17 15:59:41 +0530520 gpio1830-supply = <&vcc_3v0>;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000521 sdmmc-supply = <&vcc_sdio>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530522 status = "okay";
523};
524
525&pcie0 {
526 ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530527 num-lanes = <4>;
528 pinctrl-0 = <&pcie_clkreqnb_cpm>;
529 pinctrl-names = "default";
530 vpcie0v9-supply = <&vcc_0v9>;
531 vpcie1v8-supply = <&vcc_1v8>;
532 vpcie3v3-supply = <&vcc3v3_pcie>;
533 status = "okay";
534};
535
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000536&pcie_phy {
537 status = "okay";
538};
539
Jagan Teki0c169452019-05-17 15:59:41 +0530540&pinctrl {
Jagan Teki5cc21182020-04-28 15:30:17 +0530541 bt {
542 bt_enable_h: bt-enable-h {
543 rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
544 };
545
546 bt_host_wake_l: bt-host-wake-l {
547 rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
548 };
549
550 bt_wake_l: bt-wake-l {
551 rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
552 };
553 };
554
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000555 es8316 {
556 hp_detect: hp-detect {
557 rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
Jagan Teki0c169452019-05-17 15:59:41 +0530558 };
Jagan Teki0c169452019-05-17 15:59:41 +0530559
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000560 hp_int: hp-int {
561 rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530562 };
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000563 };
Jagan Teki5cc21182020-04-28 15:30:17 +0530564
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000565 leds {
566 user_led2: user-led2 {
567 rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530568 };
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000569 };
Jagan Teki5cc21182020-04-28 15:30:17 +0530570
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000571 pcie {
572 pcie_pwr_en: pcie-pwr-en {
573 rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530574 };
575 };
576
Jagan Teki0c169452019-05-17 15:59:41 +0530577 pmic {
578 pmic_int_l: pmic-int-l {
579 rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
580 };
581
Peter Robinson7c79b872021-07-22 16:20:42 +0100582 vsel1_pin: vsel1-pin {
Jagan Teki0c169452019-05-17 15:59:41 +0530583 rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
584 };
585
Peter Robinson7c79b872021-07-22 16:20:42 +0100586 vsel2_pin: vsel2-pin {
Jagan Teki0c169452019-05-17 15:59:41 +0530587 rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
588 };
589 };
590
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000591 sdio0 {
592 sdio0_bus4: sdio0-bus4 {
593 rockchip,pins = <2 RK_PC4 1 &pcfg_pull_up_20ma>,
594 <2 RK_PC5 1 &pcfg_pull_up_20ma>,
595 <2 RK_PC6 1 &pcfg_pull_up_20ma>,
596 <2 RK_PC7 1 &pcfg_pull_up_20ma>;
597 };
598
599 sdio0_cmd: sdio0-cmd {
600 rockchip,pins = <2 RK_PD0 1 &pcfg_pull_up_20ma>;
601 };
602
603 sdio0_clk: sdio0-clk {
604 rockchip,pins = <2 RK_PD1 1 &pcfg_pull_none_20ma>;
605 };
606 };
607
Jagan Teki0c169452019-05-17 15:59:41 +0530608 usb-typec {
609 vcc5v0_typec_en: vcc5v0-typec-en {
610 rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
611 };
612 };
613
614 usb2 {
615 vcc5v0_host_en: vcc5v0-host-en {
616 rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
617 };
618 };
Jagan Teki5cc21182020-04-28 15:30:17 +0530619
620 wifi {
621 wifi_enable_h: wifi-enable-h {
622 rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
623 };
624
625 wifi_host_wake_l: wifi-host-wake-l {
626 rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
627 };
628 };
Jagan Teki0c169452019-05-17 15:59:41 +0530629};
630
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000631&pmu_io_domains {
632 pmu1830-supply = <&vcc_3v0>;
633 status = "okay";
634};
635
Jagan Teki0c169452019-05-17 15:59:41 +0530636&pwm2 {
637 status = "okay";
638};
639
640&saradc {
641 status = "okay";
642
643 vref-supply = <&vcc_1v8>;
644};
645
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000646&sdhci {
Christopher Obbarde06375d2023-07-19 17:33:56 +0100647 max-frequency = <150000000>;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000648 bus-width = <8>;
Christopher Obbarde06375d2023-07-19 17:33:56 +0100649 mmc-hs200-1_8v;
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000650 non-removable;
651 status = "okay";
652};
653
Jagan Teki5cc21182020-04-28 15:30:17 +0530654&sdio0 {
655 #address-cells = <1>;
656 #size-cells = <0>;
657 bus-width = <4>;
658 clock-frequency = <50000000>;
659 cap-sdio-irq;
660 cap-sd-highspeed;
661 keep-power-in-suspend;
662 mmc-pwrseq = <&sdio_pwrseq>;
663 non-removable;
664 pinctrl-names = "default";
665 pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
666 sd-uhs-sdr104;
Jagan Teki5cc21182020-04-28 15:30:17 +0530667};
668
Jagan Teki0c169452019-05-17 15:59:41 +0530669&sdmmc {
670 bus-width = <4>;
671 cap-mmc-highspeed;
672 cap-sd-highspeed;
673 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
674 disable-wp;
675 max-frequency = <150000000>;
676 pinctrl-names = "default";
677 pinctrl-0 = <&sdmmc_clk &sdmmc_cd &sdmmc_cmd &sdmmc_bus4>;
678 status = "okay";
679};
680
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000681&spdif {
682
683 spdif_p0: port {
684 spdif_p0_0: endpoint {
685 remote-endpoint = <&dit_p0_0>;
686 };
687 };
Jagan Teki0c169452019-05-17 15:59:41 +0530688};
689
690&tcphy0 {
691 status = "okay";
692};
693
694&tcphy1 {
695 status = "okay";
696};
697
698&tsadc {
699 status = "okay";
700
701 /* tshut mode 0:CRU 1:GPIO */
702 rockchip,hw-tshut-mode = <1>;
703 /* tshut polarity 0:LOW 1:HIGH */
704 rockchip,hw-tshut-polarity = <1>;
705};
706
707&u2phy0 {
708 status = "okay";
709
710 u2phy0_otg: otg-port {
711 status = "okay";
712 };
713
714 u2phy0_host: host-port {
715 phy-supply = <&vcc5v0_host>;
716 status = "okay";
717 };
718};
719
720&u2phy1 {
721 status = "okay";
722
723 u2phy1_otg: otg-port {
724 status = "okay";
725 };
726
727 u2phy1_host: host-port {
728 phy-supply = <&vcc5v0_host>;
729 status = "okay";
730 };
731};
732
Jagan Teki5cc21182020-04-28 15:30:17 +0530733&uart0 {
734 pinctrl-names = "default";
735 pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530736};
737
Jagan Teki0c169452019-05-17 15:59:41 +0530738&uart2 {
739 status = "okay";
740};
741
742&usb_host0_ehci {
743 status = "okay";
744};
745
746&usb_host0_ohci {
747 status = "okay";
748};
749
750&usb_host1_ehci {
751 status = "okay";
752};
753
754&usb_host1_ohci {
755 status = "okay";
756};
757
758&usbdrd3_0 {
759 status = "okay";
760};
761
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000762&usbdrd3_1 {
Jagan Teki0c169452019-05-17 15:59:41 +0530763 status = "okay";
Jagan Teki0c169452019-05-17 15:59:41 +0530764};
765
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000766&usbdrd_dwc3_0 {
Jagan Teki0c169452019-05-17 15:59:41 +0530767 status = "okay";
FUKAUMI Naoki5d028bb2023-04-26 02:23:52 +0000768 dr_mode = "host";
Jagan Teki0c169452019-05-17 15:59:41 +0530769};
770
771&usbdrd_dwc3_1 {
772 status = "okay";
773 dr_mode = "host";
774};
775
776&vopb {
777 status = "okay";
778};
779
780&vopb_mmu {
781 status = "okay";
782};
783
784&vopl {
785 status = "okay";
786};
787
788&vopl_mmu {
789 status = "okay";
790};