blob: 53ee760b989bde0663cc92271cb679fc807b690b [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Simon Glass087e9872015-08-30 16:55:20 -06002
3#include <dt-bindings/gpio/gpio.h>
4#include <dt-bindings/interrupt-controller/irq.h>
5#include <dt-bindings/interrupt-controller/arm-gic.h>
6#include <dt-bindings/pinctrl/rockchip.h>
7#include <dt-bindings/clock/rk3288-cru.h>
Johan Jonker250dd562022-04-15 23:21:37 +02008#include <dt-bindings/power/rk3288-power.h>
Simon Glass087e9872015-08-30 16:55:20 -06009#include <dt-bindings/thermal/thermal.h>
Jacob Chen17fd3442016-03-14 11:20:17 +080010#include <dt-bindings/video/rk3288.h>
Simon Glass087e9872015-08-30 16:55:20 -060011#include "skeleton.dtsi"
12
13/ {
14 compatible = "rockchip,rk3288";
15
16 interrupt-parent = <&gic>;
17 aliases {
18 i2c0 = &i2c0;
19 i2c1 = &i2c1;
20 i2c2 = &i2c2;
21 i2c3 = &i2c3;
22 i2c4 = &i2c4;
23 i2c5 = &i2c5;
Simon Glass087e9872015-08-30 16:55:20 -060024 mshc0 = &emmc;
25 mshc1 = &sdmmc;
26 mshc2 = &sdio0;
27 mshc3 = &sdio1;
28 serial0 = &uart0;
29 serial1 = &uart1;
30 serial2 = &uart2;
31 serial3 = &uart3;
32 serial4 = &uart4;
33 spi0 = &spi0;
34 spi1 = &spi1;
35 spi2 = &spi2;
36 };
37
38 cpus {
39 #address-cells = <1>;
40 #size-cells = <0>;
41 enable-method = "rockchip,rk3066-smp";
42 rockchip,pmu = <&pmu>;
43
44 cpu0: cpu@500 {
45 device_type = "cpu";
46 compatible = "arm,cortex-a12";
47 reg = <0x500>;
48 operating-points = <
49 /* KHz uV */
50 1800000 1400000
51 1704000 1350000
52 1608000 1300000
53 1512000 1250000
54 1416000 1200000
55 1200000 1100000
56 1008000 1050000
57 816000 1000000
58 696000 950000
59 600000 900000
60 408000 900000
61 216000 900000
62 126000 900000
63 >;
64 #cooling-cells = <2>; /* min followed by max */
65 clock-latency = <40000>;
66 clocks = <&cru ARMCLK>;
67 resets = <&cru SRST_CORE0>;
68 };
69 cpu@501 {
70 device_type = "cpu";
71 compatible = "arm,cortex-a12";
72 reg = <0x501>;
73 resets = <&cru SRST_CORE1>;
74 };
75 cpu@502 {
76 device_type = "cpu";
77 compatible = "arm,cortex-a12";
78 reg = <0x502>;
79 resets = <&cru SRST_CORE2>;
80 };
81 cpu@503 {
82 device_type = "cpu";
83 compatible = "arm,cortex-a12";
84 reg = <0x503>;
85 resets = <&cru SRST_CORE3>;
86 };
87 };
88
Simon Glass087e9872015-08-30 16:55:20 -060089 xin24m: oscillator {
90 compatible = "fixed-clock";
91 clock-frequency = <24000000>;
92 clock-output-names = "xin24m";
93 #clock-cells = <0>;
94 };
95
96 timer {
97 arm,use-physical-timer;
98 compatible = "arm,armv7-timer";
99 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
100 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
101 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
102 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
103 clock-frequency = <24000000>;
104 always-on;
105 };
106
107 display-subsystem {
108 compatible = "rockchip,display-subsystem";
109 ports = <&vopl_out>, <&vopb_out>;
110 };
111
Johan Jonker05b94932022-05-02 11:42:22 +0200112 sdmmc: mmc@ff0c0000 {
Simon Glass087e9872015-08-30 16:55:20 -0600113 compatible = "rockchip,rk3288-dw-mshc";
Kever Yangd0947322017-06-14 16:31:44 +0800114 max-frequency = <150000000>;
Simon Glass087e9872015-08-30 16:55:20 -0600115 clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
116 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
Johan Jonker05b94932022-05-02 11:42:22 +0200117 clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
Simon Glass087e9872015-08-30 16:55:20 -0600118 fifo-depth = <0x100>;
119 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
120 reg = <0xff0c0000 0x4000>;
121 status = "disabled";
122 };
123
Johan Jonker05b94932022-05-02 11:42:22 +0200124 sdio0: mmc@ff0d0000 {
Simon Glass087e9872015-08-30 16:55:20 -0600125 compatible = "rockchip,rk3288-dw-mshc";
Kever Yangd0947322017-06-14 16:31:44 +0800126 max-frequency = <150000000>;
Simon Glass087e9872015-08-30 16:55:20 -0600127 clocks = <&cru HCLK_SDIO0>, <&cru SCLK_SDIO0>,
128 <&cru SCLK_SDIO0_DRV>, <&cru SCLK_SDIO0_SAMPLE>;
Johan Jonker05b94932022-05-02 11:42:22 +0200129 clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
Simon Glass087e9872015-08-30 16:55:20 -0600130 fifo-depth = <0x100>;
131 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
132 reg = <0xff0d0000 0x4000>;
133 status = "disabled";
134 };
135
Johan Jonker05b94932022-05-02 11:42:22 +0200136 sdio1: mmc@ff0e0000 {
Simon Glass087e9872015-08-30 16:55:20 -0600137 compatible = "rockchip,rk3288-dw-mshc";
Kever Yangd0947322017-06-14 16:31:44 +0800138 max-frequency = <150000000>;
Simon Glass087e9872015-08-30 16:55:20 -0600139 clocks = <&cru HCLK_SDIO1>, <&cru SCLK_SDIO1>,
140 <&cru SCLK_SDIO1_DRV>, <&cru SCLK_SDIO1_SAMPLE>;
Johan Jonker05b94932022-05-02 11:42:22 +0200141 clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
Simon Glass087e9872015-08-30 16:55:20 -0600142 fifo-depth = <0x100>;
143 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
144 reg = <0xff0e0000 0x4000>;
145 status = "disabled";
146 };
147
Johan Jonker05b94932022-05-02 11:42:22 +0200148 emmc: mmc@ff0f0000 {
Simon Glass087e9872015-08-30 16:55:20 -0600149 compatible = "rockchip,rk3288-dw-mshc";
Kever Yangd0947322017-06-14 16:31:44 +0800150 max-frequency = <150000000>;
Simon Glass087e9872015-08-30 16:55:20 -0600151 clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
152 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
Johan Jonker05b94932022-05-02 11:42:22 +0200153 clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
Simon Glass087e9872015-08-30 16:55:20 -0600154 fifo-depth = <0x100>;
155 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
156 reg = <0xff0f0000 0x4000>;
157 status = "disabled";
158 };
159
160 saradc: saradc@ff100000 {
161 compatible = "rockchip,saradc";
162 reg = <0xff100000 0x100>;
163 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
164 #io-channel-cells = <1>;
165 clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
166 clock-names = "saradc", "apb_pclk";
167 status = "disabled";
168 };
169
170 spi0: spi@ff110000 {
171 compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
172 clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
173 clock-names = "spiclk", "apb_pclk";
174 dmas = <&dmac_peri 11>, <&dmac_peri 12>;
175 dma-names = "tx", "rx";
176 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
177 pinctrl-names = "default";
178 pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>;
179 reg = <0xff110000 0x1000>;
180 #address-cells = <1>;
181 #size-cells = <0>;
182 status = "disabled";
183 };
184
185 spi1: spi@ff120000 {
186 compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
187 clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
188 clock-names = "spiclk", "apb_pclk";
189 dmas = <&dmac_peri 13>, <&dmac_peri 14>;
190 dma-names = "tx", "rx";
191 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
192 pinctrl-names = "default";
193 pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>;
194 reg = <0xff120000 0x1000>;
195 #address-cells = <1>;
196 #size-cells = <0>;
197 status = "disabled";
198 };
199
200 spi2: spi@ff130000 {
201 compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
202 clocks = <&cru SCLK_SPI2>, <&cru PCLK_SPI2>;
203 clock-names = "spiclk", "apb_pclk";
204 dmas = <&dmac_peri 15>, <&dmac_peri 16>;
205 dma-names = "tx", "rx";
206 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
207 pinctrl-names = "default";
208 pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>;
209 reg = <0xff130000 0x1000>;
210 #address-cells = <1>;
211 #size-cells = <0>;
212 status = "disabled";
213 };
214
215 i2c1: i2c@ff140000 {
216 compatible = "rockchip,rk3288-i2c";
217 reg = <0xff140000 0x1000>;
218 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
219 #address-cells = <1>;
220 #size-cells = <0>;
221 clock-names = "i2c";
222 clocks = <&cru PCLK_I2C1>;
223 pinctrl-names = "default";
224 pinctrl-0 = <&i2c1_xfer>;
225 status = "disabled";
226 };
227
228 i2c3: i2c@ff150000 {
229 compatible = "rockchip,rk3288-i2c";
230 reg = <0xff150000 0x1000>;
231 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
232 #address-cells = <1>;
233 #size-cells = <0>;
234 clock-names = "i2c";
235 clocks = <&cru PCLK_I2C3>;
236 pinctrl-names = "default";
237 pinctrl-0 = <&i2c3_xfer>;
238 status = "disabled";
239 };
240
241 i2c4: i2c@ff160000 {
242 compatible = "rockchip,rk3288-i2c";
243 reg = <0xff160000 0x1000>;
244 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
245 #address-cells = <1>;
246 #size-cells = <0>;
247 clock-names = "i2c";
248 clocks = <&cru PCLK_I2C4>;
249 pinctrl-names = "default";
250 pinctrl-0 = <&i2c4_xfer>;
251 status = "disabled";
252 };
253
254 i2c5: i2c@ff170000 {
255 compatible = "rockchip,rk3288-i2c";
256 reg = <0xff170000 0x1000>;
257 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
258 #address-cells = <1>;
259 #size-cells = <0>;
260 clock-names = "i2c";
261 clocks = <&cru PCLK_I2C5>;
262 pinctrl-names = "default";
263 pinctrl-0 = <&i2c5_xfer>;
264 status = "disabled";
265 };
266 uart0: serial@ff180000 {
267 compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
268 reg = <0xff180000 0x100>;
269 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
270 reg-shift = <2>;
271 reg-io-width = <4>;
272 clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
273 clock-names = "baudclk", "apb_pclk";
274 pinctrl-names = "default";
275 pinctrl-0 = <&uart0_xfer>;
276 status = "disabled";
277 };
278
279 uart1: serial@ff190000 {
280 compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
281 reg = <0xff190000 0x100>;
282 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
283 reg-shift = <2>;
284 reg-io-width = <4>;
285 clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
286 clock-names = "baudclk", "apb_pclk";
287 pinctrl-names = "default";
288 pinctrl-0 = <&uart1_xfer>;
289 status = "disabled";
290 };
291
292 uart2: serial@ff690000 {
293 compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
294 reg = <0xff690000 0x100>;
295 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
296 reg-shift = <2>;
297 reg-io-width = <4>;
298 clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
299 clock-names = "baudclk", "apb_pclk";
300 pinctrl-names = "default";
301 pinctrl-0 = <&uart2_xfer>;
302 status = "disabled";
303 };
304 uart3: serial@ff1b0000 {
305 compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
306 reg = <0xff1b0000 0x100>;
307 interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
308 reg-shift = <2>;
309 reg-io-width = <4>;
310 clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
311 clock-names = "baudclk", "apb_pclk";
312 pinctrl-names = "default";
313 pinctrl-0 = <&uart3_xfer>;
314 status = "disabled";
315 };
316
317 uart4: serial@ff1c0000 {
318 compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
319 reg = <0xff1c0000 0x100>;
320 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
321 reg-shift = <2>;
322 reg-io-width = <4>;
323 clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
324 clock-names = "baudclk", "apb_pclk";
325 pinctrl-names = "default";
326 pinctrl-0 = <&uart4_xfer>;
327 status = "disabled";
328 };
Johan Jonker75d78eb2022-05-02 13:22:55 +0200329
330 dmac_peri: dma-controller@ff250000 {
331 compatible = "arm,pl330", "arm,primecell";
332 reg = <0xff250000 0x4000>;
333 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
334 <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
335 #dma-cells = <1>;
336 broken-no-flushp;
337 clocks = <&cru ACLK_DMAC2>;
338 clock-names = "apb_pclk";
339 };
340
Simon Glass087e9872015-08-30 16:55:20 -0600341 thermal: thermal-zones {
342 #include "rk3288-thermal.dtsi"
343 };
344
345 tsadc: tsadc@ff280000 {
346 compatible = "rockchip,rk3288-tsadc";
347 reg = <0xff280000 0x100>;
348 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
349 clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
350 clock-names = "tsadc", "apb_pclk";
351 resets = <&cru SRST_TSADC>;
352 reset-names = "tsadc-apb";
353 pinctrl-names = "otp_out";
354 pinctrl-0 = <&otp_out>;
355 #thermal-sensor-cells = <1>;
356 hw-shut-temp = <125000>;
357 status = "disabled";
358 };
359
360 gmac: ethernet@ff290000 {
361 compatible = "rockchip,rk3288-gmac";
362 reg = <0xff290000 0x10000>;
363 interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
364 interrupt-names = "macirq";
365 rockchip,grf = <&grf>;
366 clocks = <&cru SCLK_MAC>,
367 <&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>,
368 <&cru SCLK_MACREF>, <&cru SCLK_MACREF_OUT>,
369 <&cru ACLK_GMAC>, <&cru PCLK_GMAC>;
370 clock-names = "stmmaceth",
371 "mac_clk_rx", "mac_clk_tx",
372 "clk_mac_ref", "clk_mac_refout",
373 "aclk_mac", "pclk_mac";
374 };
375
376 usb_host0_ehci: usb@ff500000 {
377 compatible = "generic-ehci";
378 reg = <0xff500000 0x100>;
379 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
380 clocks = <&cru HCLK_USBHOST0>;
381 clock-names = "usbhost";
382 phys = <&usbphy1>;
383 phy-names = "usb";
384 status = "disabled";
385 };
386
Jagan Teki00f57792020-07-21 20:54:37 +0530387 /* NOTE: doesn't work on RK3288, but fixed on RK3288W */
388 usb_host0_ohci: usb@ff520000 {
389 compatible = "generic-ohci";
390 reg = <0x0 0xff520000 0x0 0x100>;
391 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
392 clocks = <&cru HCLK_USBHOST0>;
393 phys = <&usbphy1>;
394 phy-names = "usb";
395 status = "disabled";
396 };
Simon Glass087e9872015-08-30 16:55:20 -0600397
398 usb_host1: usb@ff540000 {
399 compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
400 "snps,dwc2";
401 reg = <0xff540000 0x40000>;
402 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
403 clocks = <&cru HCLK_USBHOST1>;
404 clock-names = "otg";
405 phys = <&usbphy2>;
406 phy-names = "usb2-phy";
407 status = "disabled";
408 };
409
410 usb_otg: usb@ff580000 {
411 compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
412 "snps,dwc2";
413 reg = <0xff580000 0x40000>;
414 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
415 clocks = <&cru HCLK_OTG0>;
416 clock-names = "otg";
Xu Ziyuana11a53f2016-07-15 00:26:59 +0800417 dr_mode = "otg";
Simon Glass087e9872015-08-30 16:55:20 -0600418 phys = <&usbphy0>;
419 phy-names = "usb2-phy";
420 status = "disabled";
421 };
422
423 usb_hsic: usb@ff5c0000 {
424 compatible = "generic-ehci";
425 reg = <0xff5c0000 0x100>;
426 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
427 clocks = <&cru HCLK_HSIC>;
428 clock-names = "usbhost";
429 status = "disabled";
430 };
431
Johan Jonker75d78eb2022-05-02 13:22:55 +0200432 dmac_bus_ns: dma-controller@ff600000 {
433 compatible = "arm,pl330", "arm,primecell";
434 reg = <0xff600000 0x4000>;
435 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
436 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
437 #dma-cells = <1>;
438 broken-no-flushp;
439 clocks = <&cru ACLK_DMAC1>;
440 clock-names = "apb_pclk";
441 status = "disabled";
442 };
443
Simon Glass087e9872015-08-30 16:55:20 -0600444 i2c0: i2c@ff650000 {
445 compatible = "rockchip,rk3288-i2c";
446 reg = <0xff650000 0x1000>;
447 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
448 #address-cells = <1>;
449 #size-cells = <0>;
450 clock-names = "i2c";
451 clocks = <&cru PCLK_I2C0>;
452 pinctrl-names = "default";
453 pinctrl-0 = <&i2c0_xfer>;
454 status = "disabled";
455 };
456
457 i2c2: i2c@ff660000 {
458 compatible = "rockchip,rk3288-i2c";
459 reg = <0xff660000 0x1000>;
460 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
461 #address-cells = <1>;
462 #size-cells = <0>;
463 clock-names = "i2c";
464 clocks = <&cru PCLK_I2C2>;
465 pinctrl-names = "default";
466 pinctrl-0 = <&i2c2_xfer>;
467 status = "disabled";
468 };
469
470 pwm0: pwm@ff680000 {
471 compatible = "rockchip,rk3288-pwm";
472 reg = <0xff680000 0x10>;
473 #pwm-cells = <3>;
474 pinctrl-names = "default";
475 pinctrl-0 = <&pwm0_pin>;
476 clocks = <&cru PCLK_PWM>;
477 clock-names = "pwm";
478 rockchip,grf = <&grf>;
479 status = "disabled";
480 };
481
482 pwm1: pwm@ff680010 {
483 compatible = "rockchip,rk3288-pwm";
484 reg = <0xff680010 0x10>;
485 #pwm-cells = <3>;
486 pinctrl-names = "default";
487 pinctrl-0 = <&pwm1_pin>;
488 clocks = <&cru PCLK_PWM>;
489 clock-names = "pwm";
490 rockchip,grf = <&grf>;
491 status = "disabled";
492 };
493
494 pwm2: pwm@ff680020 {
495 compatible = "rockchip,rk3288-pwm";
496 reg = <0xff680020 0x10>;
497 #pwm-cells = <3>;
498 pinctrl-names = "default";
499 pinctrl-0 = <&pwm2_pin>;
500 clocks = <&cru PCLK_PWM>;
501 clock-names = "pwm";
502 rockchip,grf = <&grf>;
503 status = "disabled";
504 };
505
506 pwm3: pwm@ff680030 {
507 compatible = "rockchip,rk3288-pwm";
508 reg = <0xff680030 0x10>;
509 #pwm-cells = <2>;
510 pinctrl-names = "default";
511 pinctrl-0 = <&pwm3_pin>;
512 clocks = <&cru PCLK_PWM>;
513 clock-names = "pwm";
514 rockchip,grf = <&grf>;
515 status = "disabled";
516 };
517
Johan Jonker8ba3d4062022-04-15 23:21:39 +0200518 bus_intmem: bus_intmem@ff700000 {
Simon Glass087e9872015-08-30 16:55:20 -0600519 compatible = "mmio-sram";
520 reg = <0xff700000 0x18000>;
521 #address-cells = <1>;
522 #size-cells = <1>;
523 ranges = <0 0xff700000 0x18000>;
524 smp-sram@0 {
525 compatible = "rockchip,rk3066-smp-sram";
526 reg = <0x00 0x10>;
527 };
Simon Glass087e9872015-08-30 16:55:20 -0600528 };
529
530 sram@ff720000 {
531 compatible = "rockchip,rk3288-pmu-sram", "mmio-sram";
532 reg = <0xff720000 0x1000>;
533 };
534
535 pmu: power-management@ff730000 {
536 compatible = "rockchip,rk3288-pmu", "syscon";
537 reg = <0xff730000 0x100>;
538 };
539
540 sgrf: syscon@ff740000 {
541 compatible = "rockchip,rk3288-sgrf", "syscon";
542 reg = <0xff740000 0x1000>;
543 };
544
545 cru: clock-controller@ff760000 {
546 compatible = "rockchip,rk3288-cru";
547 reg = <0xff760000 0x1000>;
548 rockchip,grf = <&grf>;
549 #clock-cells = <1>;
550 #reset-cells = <1>;
David Wu452bb032018-01-13 14:06:16 +0800551 assigned-clocks = <&cru PLL_GPLL>, <&cru PLL_CPLL>,
Simon Glass087e9872015-08-30 16:55:20 -0600552 <&cru PLL_NPLL>, <&cru ACLK_CPU>,
553 <&cru HCLK_CPU>, <&cru PCLK_CPU>,
554 <&cru ACLK_PERI>, <&cru HCLK_PERI>,
555 <&cru PCLK_PERI>;
David Wu452bb032018-01-13 14:06:16 +0800556 assigned-clock-rates = <594000000>, <400000000>,
Simon Glass087e9872015-08-30 16:55:20 -0600557 <500000000>, <300000000>,
558 <150000000>, <75000000>,
559 <300000000>, <150000000>,
560 <75000000>;
Simon Glass087e9872015-08-30 16:55:20 -0600561 };
562
563 grf: syscon@ff770000 {
564 compatible = "rockchip,rk3288-grf", "syscon";
565 reg = <0xff770000 0x1000>;
566 };
567
568 wdt: watchdog@ff800000 {
569 compatible = "rockchip,rk3288-wdt", "snps,dw-wdt";
570 reg = <0xff800000 0x100>;
571 clocks = <&cru PCLK_WDT>;
572 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
573 status = "disabled";
574 };
575
Simon Glass15019802016-01-21 19:45:21 -0700576 spdif: sound@ff88b0000 {
577 compatible = "rockchip,rk3288-spdif", "rockchip,rk3066-spdif";
578 reg = <0xff8b0000 0x10000>;
579 #sound-dai-cells = <0>;
580 clock-names = "hclk", "mclk";
581 clocks = <&cru HCLK_SPDIF8CH>, <&cru SCLK_SPDIF8CH>;
582 dmas = <&dmac_bus_s 3>;
583 dma-names = "tx";
584 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
585 pinctrl-names = "default";
586 pinctrl-0 = <&spdif_tx>;
587 rockchip,grf = <&grf>;
588 status = "disabled";
589 };
590
Simon Glass087e9872015-08-30 16:55:20 -0600591 i2s: i2s@ff890000 {
592 compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s";
593 reg = <0xff890000 0x10000>;
594 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
595 #address-cells = <1>;
596 #size-cells = <0>;
Simon Glassb7e0e852018-12-27 20:15:23 -0700597 #sound-dai-cells = <1>;
Simon Glass087e9872015-08-30 16:55:20 -0600598 dmas = <&dmac_bus_s 0>, <&dmac_bus_s 1>;
599 dma-names = "tx", "rx";
600 clock-names = "i2s_hclk", "i2s_clk";
601 clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
602 pinctrl-names = "default";
603 pinctrl-0 = <&i2s0_bus>;
604 status = "disabled";
605 };
606
607 vopb: vop@ff930000 {
608 compatible = "rockchip,rk3288-vop";
609 reg = <0xff930000 0x19c>;
610 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
611 clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>;
612 clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
613 resets = <&cru SRST_LCDC0_AXI>, <&cru SRST_LCDC0_AHB>, <&cru SRST_LCDC0_DCLK>;
614 reset-names = "axi", "ahb", "dclk";
615 iommus = <&vopb_mmu>;
616 power-domains = <&power RK3288_PD_VIO>;
617 status = "disabled";
618 vopb_out: port {
619 #address-cells = <1>;
620 #size-cells = <0>;
621 vopb_out_edp: endpoint@0 {
622 reg = <0>;
623 remote-endpoint = <&edp_in_vopb>;
624 };
625 vopb_out_hdmi: endpoint@1 {
626 reg = <1>;
627 remote-endpoint = <&hdmi_in_vopb>;
628 };
Jacob Chen17fd3442016-03-14 11:20:17 +0800629 vopb_out_lvds: endpoint@2 {
630 reg = <2>;
631 remote-endpoint = <&lvds_in_vopb>;
632 };
Eric Gao590c4ac2017-05-02 18:32:45 +0800633 vopb_out_mipi: endpoint@3 {
634 reg = <3>;
635 remote-endpoint = <&mipi_in_vopb>;
636 };
637
Simon Glass087e9872015-08-30 16:55:20 -0600638 };
639 };
640
641 vopb_mmu: iommu@ff930300 {
642 compatible = "rockchip,iommu";
643 reg = <0xff930300 0x100>;
644 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
645 interrupt-names = "vopb_mmu";
646 power-domains = <&power RK3288_PD_VIO>;
647 #iommu-cells = <0>;
648 status = "disabled";
649 };
650
651 vopl: vop@ff940000 {
652 compatible = "rockchip,rk3288-vop";
653 reg = <0xff940000 0x19c>;
654 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
655 clocks = <&cru ACLK_VOP1>, <&cru DCLK_VOP1>, <&cru HCLK_VOP1>;
656 clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
657 resets = <&cru SRST_LCDC1_AXI>, <&cru SRST_LCDC1_AHB>, <&cru SRST_LCDC1_DCLK>;
658 reset-names = "axi", "ahb", "dclk";
659 iommus = <&vopl_mmu>;
660 power-domains = <&power RK3288_PD_VIO>;
661 status = "disabled";
662 vopl_out: port {
663 #address-cells = <1>;
664 #size-cells = <0>;
665 vopl_out_edp: endpoint@0 {
666 reg = <0>;
667 remote-endpoint = <&edp_in_vopl>;
668 };
669 vopl_out_hdmi: endpoint@1 {
670 reg = <1>;
671 remote-endpoint = <&hdmi_in_vopl>;
672 };
Jacob Chen17fd3442016-03-14 11:20:17 +0800673 vopl_out_lvds: endpoint@2 {
674 reg = <2>;
675 remote-endpoint = <&lvds_in_vopl>;
676 };
Eric Gao590c4ac2017-05-02 18:32:45 +0800677 vopl_out_mipi: endpoint@3 {
678 reg = <3>;
679 remote-endpoint = <&mipi_in_vopl>;
680 };
681
Simon Glass087e9872015-08-30 16:55:20 -0600682 };
683 };
684
685 vopl_mmu: iommu@ff940300 {
686 compatible = "rockchip,iommu";
687 reg = <0xff940300 0x100>;
688 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
689 interrupt-names = "vopl_mmu";
690 power-domains = <&power RK3288_PD_VIO>;
691 #iommu-cells = <0>;
692 status = "disabled";
693 };
694
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200695 mipi_dsi: mipi@ff960000 {
696 compatible = "rockchip,rk3288_mipi_dsi";
697 reg = <0xff960000 0x4000>;
698 clocks = <&cru PCLK_MIPI_DSI0>;
699 clock-names = "pclk_mipi";
700 /*pinctrl-names = "default";
701 pinctrl-0 = <&lcdc0_ctl>;*/
Simon Glass087e9872015-08-30 16:55:20 -0600702 rockchip,grf = <&grf>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200703 #address-cells = <1>;
704 #size-cells = <0>;
Simon Glass087e9872015-08-30 16:55:20 -0600705 status = "disabled";
706 ports {
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200707 reg = <1>;
708 mipi_in: port {
Simon Glass087e9872015-08-30 16:55:20 -0600709 #address-cells = <1>;
710 #size-cells = <0>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200711 mipi_in_vopb: endpoint@0 {
Simon Glass087e9872015-08-30 16:55:20 -0600712 reg = <0>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200713 remote-endpoint = <&vopb_out_mipi>;
Simon Glass087e9872015-08-30 16:55:20 -0600714 };
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200715 mipi_in_vopl: endpoint@1 {
Simon Glass087e9872015-08-30 16:55:20 -0600716 reg = <1>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200717 remote-endpoint = <&vopl_out_mipi>;
Simon Glass087e9872015-08-30 16:55:20 -0600718 };
719 };
720 };
721 };
722
Jacob Chen17fd3442016-03-14 11:20:17 +0800723 lvds: lvds@ff96c000 {
724 compatible = "rockchip,rk3288-lvds";
725 reg = <0xff96c000 0x4000>;
726 clocks = <&cru PCLK_LVDS_PHY>;
727 clock-names = "pclk_lvds";
728 pinctrl-names = "default";
729 pinctrl-0 = <&lcdc0_ctl>;
730 rockchip,grf = <&grf>;
731 status = "disabled";
732 ports {
733 #address-cells = <1>;
734 #size-cells = <0>;
735 lvds_in: port@0 {
736 reg = <0>;
737 #address-cells = <1>;
738 #size-cells = <0>;
739 lvds_in_vopb: endpoint@0 {
740 reg = <0>;
741 remote-endpoint = <&vopb_out_lvds>;
742 };
743 lvds_in_vopl: endpoint@1 {
744 reg = <1>;
745 remote-endpoint = <&vopl_out_lvds>;
746 };
747 };
748 };
749 };
750
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200751 edp: dp@ff970000 {
752 compatible = "rockchip,rk3288-edp";
753 reg = <0xff970000 0x4000>;
754 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
755 clocks = <&cru SCLK_EDP>, <&cru SCLK_EDP_24M>, <&cru PCLK_EDP_CTRL>;
Eric Gao590c4ac2017-05-02 18:32:45 +0800756 rockchip,grf = <&grf>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200757 clock-names = "clk_edp", "clk_edp_24m", "pclk_edp";
758 resets = <&cru 111>;
759 reset-names = "edp";
760 power-domains = <&power RK3288_PD_VIO>;
Eric Gao590c4ac2017-05-02 18:32:45 +0800761 status = "disabled";
762 ports {
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200763 edp_in: port {
Eric Gao590c4ac2017-05-02 18:32:45 +0800764 #address-cells = <1>;
765 #size-cells = <0>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200766 edp_in_vopb: endpoint@0 {
Eric Gao590c4ac2017-05-02 18:32:45 +0800767 reg = <0>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200768 remote-endpoint = <&vopb_out_edp>;
Eric Gao590c4ac2017-05-02 18:32:45 +0800769 };
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200770 edp_in_vopl: endpoint@1 {
Eric Gao590c4ac2017-05-02 18:32:45 +0800771 reg = <1>;
Johan Jonker63f0ffb2022-05-02 12:19:34 +0200772 remote-endpoint = <&vopl_out_edp>;
773 };
774 };
775 };
776 };
777
778 hdmi: hdmi@ff980000 {
779 compatible = "rockchip,rk3288-dw-hdmi";
780 reg = <0xff980000 0x20000>;
781 reg-io-width = <4>;
782 ddc-i2c-bus = <&i2c5>;
783 rockchip,grf = <&grf>;
784 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
785 clocks = <&cru PCLK_HDMI_CTRL>, <&cru SCLK_HDMI_HDCP>;
786 clock-names = "iahb", "isfr";
787 status = "disabled";
788 ports {
789 hdmi_in: port {
790 #address-cells = <1>;
791 #size-cells = <0>;
792 hdmi_in_vopb: endpoint@0 {
793 reg = <0>;
794 remote-endpoint = <&vopb_out_hdmi>;
795 };
796 hdmi_in_vopl: endpoint@1 {
797 reg = <1>;
798 remote-endpoint = <&vopl_out_hdmi>;
Eric Gao590c4ac2017-05-02 18:32:45 +0800799 };
800 };
801 };
802 };
803
Simon Glass087e9872015-08-30 16:55:20 -0600804 hdmi_audio: hdmi_audio {
805 compatible = "rockchip,rk3288-hdmi-audio";
806 i2s-controller = <&i2s>;
807 status = "disable";
808 };
809
810 vpu: video-codec@ff9a0000 {
811 compatible = "rockchip,rk3288-vpu";
812 reg = <0xff9a0000 0x800>;
813 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
814 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
815 interrupt-names = "vepu", "vdpu";
816 clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>;
817 clock-names = "aclk_vcodec", "hclk_vcodec";
818 power-domains = <&power RK3288_PD_VIDEO>;
819 iommus = <&vpu_mmu>;
820 };
821
822 vpu_mmu: iommu@ff9a0800 {
823 compatible = "rockchip,iommu";
824 reg = <0xff9a0800 0x100>;
825 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
826 interrupt-names = "vpu_mmu";
827 power-domains = <&power RK3288_PD_VIDEO>;
828 #iommu-cells = <0>;
829 };
830
831 gpu: gpu@ffa30000 {
832 compatible = "arm,malit764",
833 "arm,malit76x",
834 "arm,malit7xx",
835 "arm,mali-midgard";
836 reg = <0xffa30000 0x10000>;
837 interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
838 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
839 <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
840 interrupt-names = "JOB", "MMU", "GPU";
841 clocks = <&cru ACLK_GPU>;
842 clock-names = "aclk_gpu";
843 operating-points = <
844 /* KHz uV */
845 100000 950000
846 200000 950000
847 300000 1000000
848 400000 1100000
849 /* 500000 1200000 - See crosbug.com/p/33857 */
850 600000 1250000
851 >;
852 power-domains = <&power RK3288_PD_GPU>;
853 status = "disabled";
854 };
855
Johan Jonker75d78eb2022-05-02 13:22:55 +0200856 dmac_bus_s: dma-controller@ffb20000 {
857 compatible = "arm,pl330", "arm,primecell";
858 reg = <0xffb20000 0x4000>;
859 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
860 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
861 #dma-cells = <1>;
862 broken-no-flushp;
863 clocks = <&cru ACLK_DMAC1>;
864 clock-names = "apb_pclk";
865 };
866
Simon Glass087e9872015-08-30 16:55:20 -0600867 efuse: efuse@ffb40000 {
868 compatible = "rockchip,rk3288-efuse";
869 reg = <0xffb40000 0x10000>;
870 status = "disabled";
871 };
872
873 gic: interrupt-controller@ffc01000 {
874 compatible = "arm,gic-400";
875 interrupt-controller;
876 #interrupt-cells = <3>;
877 #address-cells = <0>;
878
879 reg = <0xffc01000 0x1000>,
880 <0xffc02000 0x1000>,
881 <0xffc04000 0x2000>,
882 <0xffc06000 0x2000>;
883 interrupts = <GIC_PPI 9 0xf04>;
884 };
885
886 cpuidle: cpuidle {
887 compatible = "rockchip,rk3288-cpuidle";
888 };
889
890 usbphy: phy {
891 compatible = "rockchip,rk3288-usb-phy";
892 rockchip,grf = <&grf>;
893 #address-cells = <1>;
894 #size-cells = <0>;
895 status = "disabled";
896
897 usbphy0: usb-phy0 {
898 #phy-cells = <0>;
899 reg = <0x320>;
900 clocks = <&cru SCLK_OTGPHY0>;
901 clock-names = "phyclk";
902 };
903
904 usbphy1: usb-phy1 {
905 #phy-cells = <0>;
906 reg = <0x334>;
907 clocks = <&cru SCLK_OTGPHY1>;
908 clock-names = "phyclk";
909 };
910
911 usbphy2: usb-phy2 {
912 #phy-cells = <0>;
913 reg = <0x348>;
914 clocks = <&cru SCLK_OTGPHY2>;
915 clock-names = "phyclk";
916 };
917 };
918
919 pinctrl: pinctrl {
920 compatible = "rockchip,rk3288-pinctrl";
921 rockchip,grf = <&grf>;
922 rockchip,pmu = <&pmu>;
923 #address-cells = <1>;
924 #size-cells = <1>;
925 ranges;
926
927 gpio0: gpio0@ff750000 {
928 compatible = "rockchip,gpio-bank";
929 reg = <0xff750000 0x100>;
930 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
931 clocks = <&cru PCLK_GPIO0>;
932
933 gpio-controller;
934 #gpio-cells = <2>;
935
936 interrupt-controller;
937 #interrupt-cells = <2>;
938 };
939
940 gpio1: gpio1@ff780000 {
941 compatible = "rockchip,gpio-bank";
942 reg = <0xff780000 0x100>;
943 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
944 clocks = <&cru PCLK_GPIO1>;
945
946 gpio-controller;
947 #gpio-cells = <2>;
948
949 interrupt-controller;
950 #interrupt-cells = <2>;
951 };
952
953 gpio2: gpio2@ff790000 {
954 compatible = "rockchip,gpio-bank";
955 reg = <0xff790000 0x100>;
956 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
957 clocks = <&cru PCLK_GPIO2>;
958
959 gpio-controller;
960 #gpio-cells = <2>;
961
962 interrupt-controller;
963 #interrupt-cells = <2>;
964 };
965
966 gpio3: gpio3@ff7a0000 {
967 compatible = "rockchip,gpio-bank";
968 reg = <0xff7a0000 0x100>;
969 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
970 clocks = <&cru PCLK_GPIO3>;
971
972 gpio-controller;
973 #gpio-cells = <2>;
974
975 interrupt-controller;
976 #interrupt-cells = <2>;
977 };
978
979 gpio4: gpio4@ff7b0000 {
980 compatible = "rockchip,gpio-bank";
981 reg = <0xff7b0000 0x100>;
982 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
983 clocks = <&cru PCLK_GPIO4>;
984
985 gpio-controller;
986 #gpio-cells = <2>;
987
988 interrupt-controller;
989 #interrupt-cells = <2>;
990 };
991
992 gpio5: gpio5@ff7c0000 {
993 compatible = "rockchip,gpio-bank";
994 reg = <0xff7c0000 0x100>;
995 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
996 clocks = <&cru PCLK_GPIO5>;
997
998 gpio-controller;
999 #gpio-cells = <2>;
1000
1001 interrupt-controller;
1002 #interrupt-cells = <2>;
1003 };
1004
1005 gpio6: gpio6@ff7d0000 {
1006 compatible = "rockchip,gpio-bank";
1007 reg = <0xff7d0000 0x100>;
1008 interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
1009 clocks = <&cru PCLK_GPIO6>;
1010
1011 gpio-controller;
1012 #gpio-cells = <2>;
1013
1014 interrupt-controller;
1015 #interrupt-cells = <2>;
1016 };
1017
1018 gpio7: gpio7@ff7e0000 {
1019 compatible = "rockchip,gpio-bank";
1020 reg = <0xff7e0000 0x100>;
1021 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
1022 clocks = <&cru PCLK_GPIO7>;
1023
1024 gpio-controller;
1025 #gpio-cells = <2>;
1026
1027 interrupt-controller;
1028 #interrupt-cells = <2>;
1029 };
1030
1031 gpio8: gpio8@ff7f0000 {
1032 compatible = "rockchip,gpio-bank";
1033 reg = <0xff7f0000 0x100>;
1034 interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
1035 clocks = <&cru PCLK_GPIO8>;
1036
1037 gpio-controller;
1038 #gpio-cells = <2>;
1039
1040 interrupt-controller;
1041 #interrupt-cells = <2>;
1042 };
1043
Suniel Mahesh6d308e72020-07-21 20:54:36 +05301044 hdmi {
1045 hdmi_cec_c0: hdmi-cec-c0 {
1046 rockchip,pins = <7 RK_PC0 2 &pcfg_pull_none>;
1047 };
1048 };
1049
Simon Glass087e9872015-08-30 16:55:20 -06001050 pcfg_pull_up: pcfg-pull-up {
1051 bias-pull-up;
1052 };
1053
1054 pcfg_pull_down: pcfg-pull-down {
1055 bias-pull-down;
1056 };
1057
1058 pcfg_pull_none: pcfg-pull-none {
1059 bias-disable;
1060 };
1061
1062 pcfg_pull_none_12ma: pcfg-pull-none-12ma {
1063 bias-disable;
1064 drive-strength = <12>;
1065 };
1066
1067 sleep {
1068 global_pwroff: global-pwroff {
Johan Jonker642daa72022-05-02 10:58:27 +02001069 rockchip,pins = <0 RK_PA0 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001070 };
1071
1072 ddrio_pwroff: ddrio-pwroff {
Johan Jonker642daa72022-05-02 10:58:27 +02001073 rockchip,pins = <0 RK_PA1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001074 };
1075
1076 ddr0_retention: ddr0-retention {
Johan Jonker642daa72022-05-02 10:58:27 +02001077 rockchip,pins = <0 RK_PA2 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001078 };
1079
1080 ddr1_retention: ddr1-retention {
Johan Jonker642daa72022-05-02 10:58:27 +02001081 rockchip,pins = <0 RK_PA3 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001082 };
1083 };
1084
1085 i2c0 {
1086 i2c0_xfer: i2c0-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001087 rockchip,pins = <0 RK_PB7 1 &pcfg_pull_none>,
1088 <0 RK_PC0 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001089 };
1090 };
1091
1092 i2c1 {
1093 i2c1_xfer: i2c1-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001094 rockchip,pins = <8 RK_PA4 1 &pcfg_pull_none>,
1095 <8 RK_PA5 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001096 };
1097 };
1098
1099 i2c2 {
1100 i2c2_xfer: i2c2-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001101 rockchip,pins = <6 RK_PB1 1 &pcfg_pull_none>,
1102 <6 RK_PB2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001103 };
1104 };
1105
1106 i2c3 {
1107 i2c3_xfer: i2c3-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001108 rockchip,pins = <2 RK_PC0 1 &pcfg_pull_none>,
1109 <2 RK_PC1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001110 };
1111 };
1112
1113 i2c4 {
1114 i2c4_xfer: i2c4-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001115 rockchip,pins = <7 RK_PC1 1 &pcfg_pull_none>,
1116 <7 RK_PC2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001117 };
1118 };
1119
1120 i2c5 {
1121 i2c5_xfer: i2c5-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001122 rockchip,pins = <7 RK_PC3 1 &pcfg_pull_none>,
1123 <7 RK_PC4 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001124 };
1125 };
1126
1127 i2s0 {
1128 i2s0_bus: i2s0-bus {
Johan Jonker642daa72022-05-02 10:58:27 +02001129 rockchip,pins = <6 RK_PA0 1 &pcfg_pull_none>,
1130 <6 RK_PA1 1 &pcfg_pull_none>,
1131 <6 RK_PA2 1 &pcfg_pull_none>,
1132 <6 RK_PA3 1 &pcfg_pull_none>,
1133 <6 RK_PA4 1 &pcfg_pull_none>,
1134 <6 RK_PB0 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001135 };
1136 };
1137
Jacob Chen17fd3442016-03-14 11:20:17 +08001138 lcdc0 {
1139 lcdc0_ctl: lcdc0-ctl {
Johan Jonker642daa72022-05-02 10:58:27 +02001140 rockchip,pins = <1 RK_PD0 1 &pcfg_pull_none>,
1141 <1 RK_PD1 1 &pcfg_pull_none>,
1142 <1 RK_PD2 1 &pcfg_pull_none>,
1143 <1 RK_PD3 1 &pcfg_pull_none>;
Jacob Chen17fd3442016-03-14 11:20:17 +08001144 };
1145 };
1146
Simon Glass087e9872015-08-30 16:55:20 -06001147 sdmmc {
1148 sdmmc_clk: sdmmc-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001149 rockchip,pins = <6 RK_PC4 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001150 };
1151
1152 sdmmc_cmd: sdmmc-cmd {
Johan Jonker642daa72022-05-02 10:58:27 +02001153 rockchip,pins = <6 RK_PC5 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001154 };
1155
1156 sdmmc_cd: sdmcc-cd {
Johan Jonker642daa72022-05-02 10:58:27 +02001157 rockchip,pins = <6 RK_PC6 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001158 };
1159
1160 sdmmc_bus1: sdmmc-bus1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001161 rockchip,pins = <6 RK_PC0 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001162 };
1163
1164 sdmmc_bus4: sdmmc-bus4 {
Johan Jonker642daa72022-05-02 10:58:27 +02001165 rockchip,pins = <6 RK_PC0 1 &pcfg_pull_up>,
1166 <6 RK_PC1 1 &pcfg_pull_up>,
1167 <6 RK_PC2 1 &pcfg_pull_up>,
1168 <6 RK_PC3 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001169 };
1170 };
1171
1172 sdio0 {
1173 sdio0_bus1: sdio0-bus1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001174 rockchip,pins = <4 RK_PC4 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001175 };
1176
1177 sdio0_bus4: sdio0-bus4 {
Johan Jonker642daa72022-05-02 10:58:27 +02001178 rockchip,pins = <4 RK_PC4 1 &pcfg_pull_up>,
1179 <4 RK_PC5 1 &pcfg_pull_up>,
1180 <4 RK_PC6 1 &pcfg_pull_up>,
1181 <4 RK_PC7 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001182 };
1183
1184 sdio0_cmd: sdio0-cmd {
Johan Jonker642daa72022-05-02 10:58:27 +02001185 rockchip,pins = <4 RK_PD0 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001186 };
1187
1188 sdio0_clk: sdio0-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001189 rockchip,pins = <4 RK_PD1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001190 };
1191
1192 sdio0_cd: sdio0-cd {
Johan Jonker642daa72022-05-02 10:58:27 +02001193 rockchip,pins = <4 RK_PD2 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001194 };
1195
1196 sdio0_wp: sdio0-wp {
Johan Jonker642daa72022-05-02 10:58:27 +02001197 rockchip,pins = <4 RK_PD3 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001198 };
1199
1200 sdio0_pwr: sdio0-pwr {
Johan Jonker642daa72022-05-02 10:58:27 +02001201 rockchip,pins = <4 RK_PD4 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001202 };
1203
1204 sdio0_bkpwr: sdio0-bkpwr {
Johan Jonker642daa72022-05-02 10:58:27 +02001205 rockchip,pins = <4 RK_PD5 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001206 };
1207
1208 sdio0_int: sdio0-int {
Johan Jonker642daa72022-05-02 10:58:27 +02001209 rockchip,pins = <4 RK_PD6 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001210 };
1211 };
1212
1213 sdio1 {
1214 sdio1_bus1: sdio1-bus1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001215 rockchip,pins = <3 RK_PD0 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001216 };
1217
1218 sdio1_bus4: sdio1-bus4 {
Johan Jonker642daa72022-05-02 10:58:27 +02001219 rockchip,pins = <3 RK_PD0 4 &pcfg_pull_up>,
1220 <3 RK_PD1 4 &pcfg_pull_up>,
1221 <3 RK_PD2 4 &pcfg_pull_up>,
1222 <3 RK_PD3 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001223 };
1224
1225 sdio1_cd: sdio1-cd {
Johan Jonker642daa72022-05-02 10:58:27 +02001226 rockchip,pins = <3 RK_PD4 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001227 };
1228
1229 sdio1_wp: sdio1-wp {
Johan Jonker642daa72022-05-02 10:58:27 +02001230 rockchip,pins = <3 RK_PD5 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001231 };
1232
1233 sdio1_bkpwr: sdio1-bkpwr {
Johan Jonker642daa72022-05-02 10:58:27 +02001234 rockchip,pins = <3 RK_PD6 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001235 };
1236
1237 sdio1_int: sdio1-int {
Johan Jonker642daa72022-05-02 10:58:27 +02001238 rockchip,pins = <3 RK_PD7 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001239 };
1240
1241 sdio1_cmd: sdio1-cmd {
Johan Jonker642daa72022-05-02 10:58:27 +02001242 rockchip,pins = <4 RK_PA6 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001243 };
1244
1245 sdio1_clk: sdio1-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001246 rockchip,pins = <4 RK_PA7 4 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001247 };
1248
1249 sdio1_pwr: sdio1-pwr {
Johan Jonker642daa72022-05-02 10:58:27 +02001250 rockchip,pins = <4 RK_PB1 4 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001251 };
1252 };
1253
1254 emmc {
1255 emmc_clk: emmc-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001256 rockchip,pins = <3 RK_PC2 2 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001257 };
1258
1259 emmc_cmd: emmc-cmd {
Johan Jonker642daa72022-05-02 10:58:27 +02001260 rockchip,pins = <3 RK_PC0 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001261 };
1262
1263 emmc_pwr: emmc-pwr {
Johan Jonker642daa72022-05-02 10:58:27 +02001264 rockchip,pins = <3 RK_PB1 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001265 };
1266
1267 emmc_bus1: emmc-bus1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001268 rockchip,pins = <3 RK_PA0 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001269 };
1270
1271 emmc_bus4: emmc-bus4 {
Johan Jonker642daa72022-05-02 10:58:27 +02001272 rockchip,pins = <3 RK_PA0 2 &pcfg_pull_up>,
1273 <3 RK_PA1 2 &pcfg_pull_up>,
1274 <3 RK_PA2 2 &pcfg_pull_up>,
1275 <3 RK_PA3 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001276 };
1277
1278 emmc_bus8: emmc-bus8 {
Johan Jonker642daa72022-05-02 10:58:27 +02001279 rockchip,pins = <3 RK_PA0 2 &pcfg_pull_up>,
1280 <3 RK_PA1 2 &pcfg_pull_up>,
1281 <3 RK_PA2 2 &pcfg_pull_up>,
1282 <3 RK_PA3 2 &pcfg_pull_up>,
1283 <3 RK_PA4 2 &pcfg_pull_up>,
1284 <3 RK_PA5 2 &pcfg_pull_up>,
1285 <3 RK_PA6 2 &pcfg_pull_up>,
1286 <3 RK_PA7 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001287 };
1288 };
1289
1290 spi0 {
1291 spi0_clk: spi0-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001292 rockchip,pins = <5 RK_PB4 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001293 };
1294 spi0_cs0: spi0-cs0 {
Johan Jonker642daa72022-05-02 10:58:27 +02001295 rockchip,pins = <5 RK_PB5 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001296 };
1297 spi0_tx: spi0-tx {
Johan Jonker642daa72022-05-02 10:58:27 +02001298 rockchip,pins = <5 RK_PB6 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001299 };
1300 spi0_rx: spi0-rx {
Johan Jonker642daa72022-05-02 10:58:27 +02001301 rockchip,pins = <5 RK_PB7 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001302 };
1303 spi0_cs1: spi0-cs1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001304 rockchip,pins = <5 RK_PC0 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001305 };
1306 };
1307 spi1 {
1308 spi1_clk: spi1-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001309 rockchip,pins = <7 RK_PB4 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001310 };
1311 spi1_cs0: spi1-cs0 {
Johan Jonker642daa72022-05-02 10:58:27 +02001312 rockchip,pins = <7 RK_PB5 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001313 };
1314 spi1_rx: spi1-rx {
Johan Jonker642daa72022-05-02 10:58:27 +02001315 rockchip,pins = <7 RK_PB6 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001316 };
1317 spi1_tx: spi1-tx {
Johan Jonker642daa72022-05-02 10:58:27 +02001318 rockchip,pins = <7 RK_PB7 2 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001319 };
1320 };
1321
1322 spi2 {
1323 spi2_cs1: spi2-cs1 {
Johan Jonker642daa72022-05-02 10:58:27 +02001324 rockchip,pins = <8 RK_PA3 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001325 };
1326 spi2_clk: spi2-clk {
Johan Jonker642daa72022-05-02 10:58:27 +02001327 rockchip,pins = <8 RK_PA6 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001328 };
1329 spi2_cs0: spi2-cs0 {
Johan Jonker642daa72022-05-02 10:58:27 +02001330 rockchip,pins = <8 RK_PA7 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001331 };
1332 spi2_rx: spi2-rx {
Johan Jonker642daa72022-05-02 10:58:27 +02001333 rockchip,pins = <8 RK_PB0 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001334 };
1335 spi2_tx: spi2-tx {
Johan Jonker642daa72022-05-02 10:58:27 +02001336 rockchip,pins = <8 RK_PB1 1 &pcfg_pull_up>;
Simon Glass087e9872015-08-30 16:55:20 -06001337 };
1338 };
1339
1340 uart0 {
1341 uart0_xfer: uart0-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001342 rockchip,pins = <4 RK_PC0 1 &pcfg_pull_up>,
1343 <4 RK_PC1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001344 };
1345
1346 uart0_cts: uart0-cts {
Johan Jonker642daa72022-05-02 10:58:27 +02001347 rockchip,pins = <4 RK_PC2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001348 };
1349
1350 uart0_rts: uart0-rts {
Johan Jonker642daa72022-05-02 10:58:27 +02001351 rockchip,pins = <4 RK_PC3 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001352 };
1353 };
1354
1355 uart1 {
1356 uart1_xfer: uart1-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001357 rockchip,pins = <5 RK_PB0 1 &pcfg_pull_up>,
1358 <5 RK_PB1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001359 };
1360
1361 uart1_cts: uart1-cts {
Johan Jonker642daa72022-05-02 10:58:27 +02001362 rockchip,pins = <5 RK_PB2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001363 };
1364
1365 uart1_rts: uart1-rts {
Johan Jonker642daa72022-05-02 10:58:27 +02001366 rockchip,pins = <5 RK_PB3 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001367 };
1368 };
1369
1370 uart2 {
1371 uart2_xfer: uart2-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001372 rockchip,pins = <7 RK_PC6 1 &pcfg_pull_up>,
1373 <7 RK_PC7 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001374 };
1375 /* no rts / cts for uart2 */
1376 };
1377
1378 uart3 {
1379 uart3_xfer: uart3-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001380 rockchip,pins = <7 RK_PA7 1 &pcfg_pull_up>,
1381 <7 RK_PB0 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001382 };
1383
1384 uart3_cts: uart3-cts {
Johan Jonker642daa72022-05-02 10:58:27 +02001385 rockchip,pins = <7 RK_PB1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001386 };
1387
1388 uart3_rts: uart3-rts {
Johan Jonker642daa72022-05-02 10:58:27 +02001389 rockchip,pins = <7 RK_PB2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001390 };
1391 };
1392
1393 uart4 {
1394 uart4_xfer: uart4-xfer {
Johan Jonker642daa72022-05-02 10:58:27 +02001395 rockchip,pins = <5 RK_PB4 3 &pcfg_pull_up>,
1396 <5 RK_PB5 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001397 };
1398
1399 uart4_cts: uart4-cts {
Johan Jonker642daa72022-05-02 10:58:27 +02001400 rockchip,pins = <5 RK_PB6 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001401 };
1402
1403 uart4_rts: uart4-rts {
Johan Jonker642daa72022-05-02 10:58:27 +02001404 rockchip,pins = <5 RK_PB7 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001405 };
1406 };
1407
1408 tsadc {
1409 otp_out: otp-out {
Johan Jonker642daa72022-05-02 10:58:27 +02001410 rockchip,pins = <0 RK_PB2 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001411 };
1412 };
1413
1414 pwm0 {
1415 pwm0_pin: pwm0-pin {
Johan Jonker642daa72022-05-02 10:58:27 +02001416 rockchip,pins = <7 RK_PA0 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001417 };
1418 };
1419
1420 pwm1 {
1421 pwm1_pin: pwm1-pin {
Johan Jonker642daa72022-05-02 10:58:27 +02001422 rockchip,pins = <7 RK_PA1 1 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001423 };
1424 };
1425
1426 pwm2 {
1427 pwm2_pin: pwm2-pin {
Johan Jonker642daa72022-05-02 10:58:27 +02001428 rockchip,pins = <7 RK_PC6 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001429 };
1430 };
1431
1432 pwm3 {
1433 pwm3_pin: pwm3-pin {
Johan Jonker642daa72022-05-02 10:58:27 +02001434 rockchip,pins = <7 RK_PC7 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001435 };
1436 };
1437
1438 gmac {
1439 rgmii_pins: rgmii-pins {
Johan Jonker642daa72022-05-02 10:58:27 +02001440 rockchip,pins = <3 RK_PD6 3 &pcfg_pull_none>,
1441 <3 RK_PD7 3 &pcfg_pull_none>,
1442 <3 RK_PD2 3 &pcfg_pull_none>,
1443 <3 RK_PD3 3 &pcfg_pull_none>,
1444 <3 RK_PD4 3 &pcfg_pull_none_12ma>,
1445 <3 RK_PD5 3 &pcfg_pull_none_12ma>,
1446 <3 RK_PD0 3 &pcfg_pull_none_12ma>,
1447 <3 RK_PD1 3 &pcfg_pull_none_12ma>,
1448 <4 RK_PA0 3 &pcfg_pull_none>,
1449 <4 RK_PA5 3 &pcfg_pull_none>,
1450 <4 RK_PA6 3 &pcfg_pull_none>,
1451 <4 RK_PB1 3 &pcfg_pull_none_12ma>,
1452 <4 RK_PA4 3 &pcfg_pull_none_12ma>,
1453 <4 RK_PA1 3 &pcfg_pull_none>,
1454 <4 RK_PA3 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001455 };
1456
1457 rmii_pins: rmii-pins {
Johan Jonker642daa72022-05-02 10:58:27 +02001458 rockchip,pins = <3 RK_PD6 3 &pcfg_pull_none>,
1459 <3 RK_PD7 3 &pcfg_pull_none>,
1460 <3 RK_PD4 3 &pcfg_pull_none>,
1461 <3 RK_PD5 3 &pcfg_pull_none>,
1462 <4 RK_PA0 3 &pcfg_pull_none>,
1463 <4 RK_PA5 3 &pcfg_pull_none>,
1464 <4 RK_PA4 3 &pcfg_pull_none>,
1465 <4 RK_PA1 3 &pcfg_pull_none>,
1466 <4 RK_PA2 3 &pcfg_pull_none>,
1467 <4 RK_PA3 3 &pcfg_pull_none>;
Simon Glass087e9872015-08-30 16:55:20 -06001468 };
1469 };
Simon Glass15019802016-01-21 19:45:21 -07001470
1471 spdif {
1472 spdif_tx: spdif-tx {
Johan Jonker642daa72022-05-02 10:58:27 +02001473 rockchip,pins = <6 RK_PB3 1 &pcfg_pull_none>;
Simon Glass15019802016-01-21 19:45:21 -07001474 };
1475 };
Simon Glass087e9872015-08-30 16:55:20 -06001476 };
1477
1478 power: power-controller {
1479 compatible = "rockchip,rk3288-power-controller";
1480 #power-domain-cells = <1>;
1481 rockchip,pmu = <&pmu>;
1482 #address-cells = <1>;
1483 #size-cells = <0>;
1484
1485 pd_gpu {
1486 reg = <RK3288_PD_GPU>;
1487 clocks = <&cru ACLK_GPU>;
1488 };
1489
1490 pd_hevc {
1491 reg = <RK3288_PD_HEVC>;
1492 clocks = <&cru ACLK_HEVC>,
1493 <&cru SCLK_HEVC_CABAC>,
1494 <&cru SCLK_HEVC_CORE>,
1495 <&cru HCLK_HEVC>;
1496 };
1497
1498 pd_vio {
1499 reg = <RK3288_PD_VIO>;
1500 clocks = <&cru ACLK_IEP>,
1501 <&cru ACLK_ISP>,
1502 <&cru ACLK_RGA>,
1503 <&cru ACLK_VIP>,
1504 <&cru ACLK_VOP0>,
1505 <&cru ACLK_VOP1>,
1506 <&cru DCLK_VOP0>,
1507 <&cru DCLK_VOP1>,
1508 <&cru HCLK_IEP>,
1509 <&cru HCLK_ISP>,
1510 <&cru HCLK_RGA>,
1511 <&cru HCLK_VIP>,
1512 <&cru HCLK_VOP0>,
1513 <&cru HCLK_VOP1>,
1514 <&cru PCLK_EDP_CTRL>,
1515 <&cru PCLK_HDMI_CTRL>,
1516 <&cru PCLK_LVDS_PHY>,
1517 <&cru PCLK_MIPI_CSI>,
1518 <&cru PCLK_MIPI_DSI0>,
1519 <&cru PCLK_MIPI_DSI1>,
1520 <&cru SCLK_EDP_24M>,
1521 <&cru SCLK_EDP>,
1522 <&cru SCLK_HDMI_CEC>,
1523 <&cru SCLK_HDMI_HDCP>,
1524 <&cru SCLK_ISP_JPE>,
1525 <&cru SCLK_ISP>,
1526 <&cru SCLK_RGA>;
1527 };
1528
1529 pd_video {
1530 reg = <RK3288_PD_VIDEO>;
1531 clocks = <&cru ACLK_VCODEC>,
1532 <&cru HCLK_VCODEC>;
1533 };
1534 };
1535};