1 #include <dt-bindings/interrupt-controller/arm-gic.h>
2 #include <dt-bindings/suspend/rockchip-pm.h>
3 #include <dt-bindings/sensor-dev.h>
4 #include <dt-bindings/clock/rk_system_status.h>
5 #include <dt-bindings/rkfb/rk_fb.h>
7 #include "skeleton.dtsi"
8 #include "rk312x-clocks.dtsi"
9 #include "rk312x-pinctrl.dtsi"
12 compatible = "rockchip,rk312x";
13 rockchip,sram = <&sram>;
14 interrupt-parent = <&gic>;
34 compatible = "arm,cortex-a7";
39 compatible = "arm,cortex-a7";
44 compatible = "arm,cortex-a7";
49 compatible = "arm,cortex-a7";
54 gic: interrupt-controller@10139000 {
55 compatible = "arm,cortex-a15-gic";
57 #interrupt-cells = <3>;
59 reg = <0x10139000 0x1000>,
64 compatible = "arm,cortex-a7-pmu";
65 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
66 <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>,
67 <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>,
68 <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
71 cpu_axi_bus: cpu_axi_bus {
72 compatible = "rockchip,cpu_axi_bus";
83 reg = <0x10128080 0x20>;
86 reg = <0x1012a000 0x20>;
89 reg = <0x1012c000 0x20>;
92 reg = <0x1012d000 0x20>;
95 reg = <0x1012e000 0x20>;
98 reg = <0x1012f000 0x20>;
101 reg = <0x1012f080 0x20>;
104 reg = <0x1012f100 0x20>;
107 reg = <0x1012f180 0x20>;
108 rockchip,priority = <3 3>;
111 reg = <0x1012f200 0x20>;
112 rockchip,priority = <3 3>;
117 #address-cells = <1>;
122 reg = <0x10128000 0x20>;
123 rockchip,read-latency = <0x3f>;
128 sram: sram@10080400 {
129 compatible = "mmio-sram";
130 reg = <0x10080400 0x1C00>;
136 compatible = "arm,armv7-timer";
137 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
138 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
139 clock-frequency = <24000000>;
143 compatible = "rockchip,timer";
144 reg = <0x20044000 0x20>;
145 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
146 rockchip,broadcast = <1>;
149 watchdog: wdt@2004c000 {
150 compatible = "rockchip,watch dog";
151 reg = <0x2004c000 0x100>;
152 // clocks = <&clk_gates7 15>;
153 clock-names = "pclk_wdt";
154 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
156 rockchip,timeout = <60>;
157 rockchip,atboot = <1>;
158 rockchip,debug = <0>;
163 #address-cells = <1>;
165 compatible = "arm,amba-bus";
166 interrupt-parent = <&gic>;
169 pdma: pdma@20078000 {
170 compatible = "arm,pl330", "arm,primecell";
171 reg = <0x20078000 0x4000>;
172 clocks = <&clk_gates5 1>;
173 clock-names = "apb_pclk";
174 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
175 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
180 reset: reset@20000110 {
181 compatible = "rockchip,reset";
182 reg = <0x20000110 0x24>;
183 rockchip,reset-flag = <ROCKCHIP_RESET_HIWORD_MASK>;
187 nandc: nandc@10500000 {
188 compatible = "rockchip,rk-nandc";
189 reg = <0x10500000 0x4000>;
190 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
191 //pinctrl-names = "default";
192 //pinctrl-0 = <&nandc_ale &nandc_cle &nandc_wrn &nandc_rdn &nandc_rdy &nandc_cs0 &nandc_data>;
194 clocks = <&clk_nandc>, <&clk_gates5 9>, <&clk_gates10 15>;
195 clock-names = "clk_nandc", "g_clk_nandc", "hclk_nandc";
198 nandc0reg: nandc0@10500000 {
199 compatible = "rockchip,rk-nandc";
200 reg = <0x10500000 0x4000>;
202 uart0: serial@20060000 {
203 compatible = "rockchip,serial";
204 reg = <0x20060000 0x100>;
205 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
206 clock-frequency = <24000000>;
207 clocks = <&clk_uart0>, <&clk_gates8 0>;
208 clock-names = "sclk_uart", "pclk_uart";
211 dmas = <&pdma 2>, <&pdma 3>;
213 pinctrl-names = "default";
214 pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
218 uart1: serial@20064000 {
219 compatible = "rockchip,serial";
220 reg = <0x20064000 0x100>;
221 interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
222 clock-frequency = <24000000>;
223 clocks = <&clk_uart1>, <&clk_gates8 1>;
224 clock-names = "sclk_uart", "pclk_uart";
227 dmas = <&pdma 4>, <&pdma 5>;
229 pinctrl-names = "default";
230 pinctrl-0 = <&uart1_xfer &uart1_cts &uart1_rts>;
234 uart2: serial@20068000 {
235 compatible = "rockchip,serial";
236 reg = <0x20068000 0x100>;
237 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
238 clock-frequency = <24000000>;
239 clocks = <&clk_uart2>, <&clk_gates8 2>;
240 clock-names = "sclk_uart", "pclk_uart";
243 dmas = <&pdma 6>, <&pdma 7>;
245 pinctrl-names = "default";
246 pinctrl-0 = <&uart2_xfer>;
251 compatible = "rockchip,rk312x-gmac";
252 reg = <0x2008c000 0x4000>;
253 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; /*irq=88*/
254 interrupt-names = "macirq";
255 clocks = <&clk_mac_ref>, <&clk_gates2 6>,
256 <&clk_gates2 7>, <&clk_gates2 4>,
257 <&clk_gates2 5>, <&clk_gates10 10>,
259 clock-names = "clk_mac", "mac_clk_rx",
260 "mac_clk_tx", "clk_mac_ref",
261 "clk_mac_refout", "aclk_mac",
264 pinctrl-names = "default";
265 pinctrl-0 = <&gmac_rxdv &gmac_txclk &gmac_crs &gmac_rxclk &gmac_mdio &gmac_txen &gmac_clk &gmac_rxer &gmac_rxd1 &gmac_rxd0 &gmac_txd1 &gmac_txd0 &gmac_rxd3 &gmac_rxd2 &gmac_txd2 &gmac_txd3 &gmac_col_gpio &gmac_mdc>;
269 compatible = "rockchip,fiq-debugger";
270 rockchip,serial-id = <2>;
271 rockchip,signal-irq = <106>;
272 rockchip,wake-irq = <0>;
276 rockchip_clocks_init: clocks-init{
277 compatible = "rockchip,clocks-init";
278 rockchip,clocks-init-parent =
279 <&clk_core &clk_apll>, <&aclk_cpu &clk_gpll_div2>,
280 <&aclk_peri &clk_gpll_div2>, <&clk_uart0_pll &clk_gpll>,
281 <&clk_uart2_pll &clk_gpll>, <&clk_i2s_2ch_pll &clk_gpll>,
282 <&clk_i2s_8ch_pll &clk_gpll>, <&clk_spdif_pll &clk_gpll>,
283 <&clk_vepu &clk_gpll_div2>, <&clk_vdpu &clk_gpll_div2>,
284 <&clk_hevc_core &clk_gpll>, <&aclk_vio0_pre &clk_gpll_div2>,
285 <&aclk_vio1_pre &clk_gpll_div2>, <&hclk_vio_pre &clk_gpll_div2>,
286 <&sclk_lcdc0 &clk_cpll>, <&clk_gpu &clk_gpll_div2>,
287 <&clk_cif_pll &clk_gpll_div2>, <&dclk_ebc &clk_gpll_div2>,
288 <&clk_emmc &clk_gpll_div2>, <&clk_sdio &clk_gpll_div2>,
289 <&clk_sfc &clk_gpll_div2>, <&clk_sdmmc0 &clk_gpll_div2>,
290 <&clk_tsp &clk_gpll_div2>, <&clk_nandc &clk_gpll_div2>,
291 <&clk_mac_pll &clk_cpll>;
292 rockchip,clocks-init-rate =
293 <&clk_core 600000000>, <&clk_gpll 594000000>,
294 <&clk_cpll 400000000>, <&aclk_cpu 300000000>,
295 <&hclk_cpu_pre 150000000>, <&pclk_cpu_pre 75000000>,
296 <&aclk_peri 300000000>, <&hclk_peri_pre 150000000>,
297 <&pclk_peri_pre 75000000>, <&clk_gpu 300000000>,
298 <&aclk_vio0_pre 300000000>, <&hclk_vio_pre 150000000>,
299 <&aclk_vio1_pre 300000000>, <&clk_vepu 300000000>,
300 <&clk_vdpu 300000000>, <&clk_hevc_core 200000000>,
301 <&clk_mac_ref 125000000>;
302 /* rockchip,clocks-uboot-has-init =
306 compatible = "arm,mali400";
307 reg = <0x10091000 0x200>,
315 reg-names = "Mali_L2",
323 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
324 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
325 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
326 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
327 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
328 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
330 interrupt-names = "Mali_GP_IRQ",
339 compatible = "rockchip,clocks-enable";
342 <&clk_gates0 6>,<&clk_gates0 0>,
346 <&clk_gates0 1>, <&clk_gates0 3>,
347 <&clk_gates0 4>, <&clk_gates0 5>,
351 <&clk_gates10 3>, <&clk_gates10 4>,
352 <&clk_gates10 5>, <&clk_gates10 6>,
353 <&clk_gates10 7>, <&clk_gates10 8>,
356 <&clk_gates2 0>, <&hclk_peri_pre>,
357 <&pclk_peri_pre>, <&clk_gates2 1>,
360 <&clk_gates4 12>,/*aclk_intmem*/
361 <&clk_gates4 10>,/*aclk_strc_sys*/
364 //<&clk_gates5 6>,/*hclk_rom*/
365 <&clk_gates3 5>,/*hclk_crypto*/
368 <&clk_gates5 4>,/*pclk_grf*/
369 <&clk_gates5 7>,/*pclk_ddrupctl*/
370 //<&clk_gates5 14>,/*pclk_acodec*/
371 //<&clk_gates3 8>,/*pclk_hdmi*/
374 //<&clk_gates10 10>,/*aclk_gmac*/
375 <&clk_gates4 3>,/*aclk_peri_axi_matrix*/
376 //<&clk_gates5 1>,/*aclk_dmac2*/
377 <&clk_gates9 15>,/*aclk_peri_niu*/
378 <&clk_gates9 2>,/*g_pclk_pmu*/
379 <&clk_gates9 3>,/*g_pclk_pmu_noc*/
380 <&clk_gates4 2>,/*aclk_cpu_peri*/
383 <&clk_gates4 0>,/*hclk_peri_matrix*/
384 //<&clk_gates9 13>,/*hclk_usb_peri*/
385 <&clk_gates9 14>,/*hclk_peri_arbi*/
388 <&clk_gates4 1>,/*pclk_peri_axi_matrix*/
391 //<&clk_gates6 12>,/*hclk_vio_niu*/
392 //<&clk_gates6 1>,/*hclk_lcdc*/
395 //<&clk_gates6 13>,/*aclk_vio*/
396 //<&clk_gates6 0>,/*aclk_lcdc*/
399 //<&clk_gates9 10>,/*aclk_vio1_niu*/
404 <&clk_gates8 2>,/*pclk_uart2*/
409 //<&clk_gates1 3>,/*clk_jtag*/
412 <&clk_gates1 0>;/*pclk_pmu_pre*/
416 compatible = "rockchip,rk30-i2c";
417 reg = <0x20072000 0x1000>;
418 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
419 #address-cells = <1>;
421 pinctrl-names = "default", "gpio";
422 pinctrl-0 = <&i2c0_sda &i2c0_scl>;
423 pinctrl-1 = <&i2c0_gpio>;
424 gpios = <&gpio0 GPIO_A1 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_A0 GPIO_ACTIVE_LOW>;
425 clocks = <&clk_gates8 4>;
426 rockchip,check-idle = <1>;
431 compatible = "rockchip,rk30-i2c";
432 reg = <0x20056000 0x1000>;
433 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
434 #address-cells = <1>;
436 pinctrl-names = "default", "gpio";
437 pinctrl-0 = <&i2c1_sda &i2c1_scl>;
438 pinctrl-1 = <&i2c1_gpio>;
439 gpios = <&gpio0 GPIO_A3 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_A2 GPIO_ACTIVE_LOW>;
440 clocks = <&clk_gates8 5>;
441 rockchip,check-idle = <1>;
446 compatible = "rockchip,rk30-i2c";
447 reg = <0x2005a000 0x1000>;
448 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
449 #address-cells = <1>;
451 pinctrl-names = "default", "gpio";
452 pinctrl-0 = <&i2c2_sda &i2c2_scl>;
453 pinctrl-1 = <&i2c2_gpio>;
454 gpios = <&gpio2 GPIO_C4 GPIO_ACTIVE_LOW>, <&gpio2 GPIO_C5 GPIO_ACTIVE_LOW>;
455 clocks = <&clk_gates8 6>;
456 rockchip,check-idle = <1>;
461 compatible = "rockchip,rk30-i2c";
462 reg = <0x2005e000 0x1000>;
463 interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
464 #address-cells = <1>;
466 pinctrl-names = "default", "gpio";
467 pinctrl-0 = <&i2c3_sda &i2c3_scl>;
468 pinctrl-1 = <&i2c3_gpio>;
469 gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_A6 GPIO_ACTIVE_LOW>;
470 clocks = <&clk_gates8 7>;
471 rockchip,check-idle = <1>;
475 i2s0: i2s0@10220000 {
476 compatible = "rockchip-i2s";
477 reg = <0x10220000 0x1000>;
479 clocks = <&clk_i2s_2ch>, <&clk_i2s_2ch_out>, <&clk_gates7 2>;
480 clock-names = "i2s_clk", "i2s_mclk", "i2s_hclk";
481 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
482 dmas = <&pdma 0>, <&pdma 1>;
484 dma-names = "tx", "rx";
485 //pinctrl-names = "default", "sleep";
486 //pinctrl-0 = <&i2s0_mclk &i2s0_sclk &i2s0_lrckrx &i2s0_lrcktx &i2s0_sdi &i2s0_sdo>;
487 //pinctrl-1 = <&i2s0_gpio>;
491 i2s1: i2s1@10200000 {
492 compatible = "rockchip-i2s";
493 reg = <0x10200000 0x1000>;
495 clocks = <&clk_i2s_8ch>, <&clk_gates7 4>;
496 clock-names = "i2s_clk", "i2s_hclk";
497 interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
498 dmas = <&pdma 14>, <&pdma 15>;
500 dma-names = "tx", "rx";
503 spdif: spdif@10204000 {
504 compatible = "rockchip-spdif";
505 reg = <0x10204000 0x1000>;
506 clocks = <&clk_spdif>, <&clk_gates10 9>;
507 clock-names = "spdif_mclk", "spdif_hclk";
508 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
512 pinctrl-names = "default";
513 pinctrl-0 = <&spdif_tx>;
516 dsihost0: mipi@10110000{
517 compatible = "rockchip,rk312x-dsi";
519 reg = <0x10110000 0x4000>, <0x20038000 0x4000>;
520 reg-names = "mipi_dsi_host" ,"mipi_dsi_phy";
521 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
522 clocks = <&clk_gates2 15>, <&clk_gates5 0>, <&clk_gates9 6>, <&clk_gates9 5>, <&pd_mipidsi>;
523 clock-names = "clk_mipi_24m", "pclk_mipi_dsi", "pclk_mipi_dsi_host", "hclk_vio_h2p", "pd_mipi_dsi";
527 emmc: rksdmmc@1021c000 {
528 compatible = "rockchip,rk_mmc", "rockchip,rk312x-sdmmc";
529 reg = <0x1021c000 0x4000>;
530 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
531 #address-cells = <1>;
533 //pinctrl-names = "default",,"suspend";
534 //pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_wp &sd0_pwr &sd0_bus1 &sd0_bus4>;
535 clocks = <&clk_emmc>, <&clk_gates7 0>;
536 clock-names = "clk_mmc", "hclk_mmc";
538 dma-names = "dw_mci";
540 fifo-depth = <0x100>;
545 sdmmc: rksdmmc@10214000 {
546 compatible = "rockchip,rk_mmc", "rockchip,rk312x-sdmmc";
547 reg = <0x10214000 0x4000>;
548 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
549 #address-cells = <1>;
551 pinctrl-names = "default", "idle", "udbg";
552 pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
553 pinctrl-1 = <&sdmmc0_gpio>;
554 pinctrl-2 = <&uart2_xfer &sdmmc0_dectn>;
555 clocks = <&clk_sdmmc0>, <&clk_gates5 10>;
556 clock-names = "clk_mmc", "hclk_mmc";
558 dma-names = "dw_mci";
560 fifo-depth = <0x100>;
564 sdio: rksdmmc@10218000 {
565 compatible = "rockchip,rk_mmc", "rockchip,rk312x-sdmmc";
566 reg = <0x10218000 0x4000>;
567 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
568 #address-cells = <1>;
570 pinctrl-names = "default","idle";
571 pinctrl-0 = <&sdio0_pwren &sdio0_cmd &sdio0_clk &sdio0_bus4>;
572 pinctrl-1 = <&sdio0_gpio>;
573 clocks = <&clk_sdio>, <&clk_gates5 11>;
574 clock-names = "clk_mmc", "hclk_mmc";
576 dma-names = "dw_mci";
578 fifo-depth = <0x100>;
583 compatible = "rockchip,rockchip-spi";
584 reg = <0x20074000 0x1000>;
585 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
586 #address-cells = <1>;
588 pinctrl-names = "default";
589 pinctrl-0 = <&spi0_txd_mux0 &spi0_rxd_mux0 &spi0_clk_mux0 &spi0_cs0_mux0 &spi0_cs1_mux0>;
590 //pinctrl-0 = <&spi0_txd_mux1 &spi0_rxd_mux1 &spi0_clk_mux1 &spi0_cs0_mux1 &spi0_cs1_mux1>;
591 //pinctrl-0 = <&spi0_txd_mux2 &spi0_rxd_mux2 &spi0_clk_mux2 &spi0_cs0_mux2>;
592 rockchip,spi-src-clk = <0>;
594 clocks =<&clk_spi0>, <&clk_gates7 12>;
595 clock-names = "spi","pclk_spi0";
596 dmas = <&pdma 8>, <&pdma 9>;
598 dma-names = "tx", "rx";
603 compatible = "rockchip,saradc";
604 reg = <0x2006c000 0x100>;
605 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
606 #io-channel-cells = <1>;
608 rockchip,adc-vref = <1800>;
609 clock-frequency = <1000000>;
610 clocks = <&clk_saradc>, <&clk_gates7 14>;
611 clock-names = "saradc", "pclk_saradc";
616 compatible = "rockchip,rk-pwm";
617 reg = <0x20050000 0x10>;
619 pinctrl-names = "default";
620 pinctrl-0 = <&pwm0_pin>;
621 clocks = <&clk_gates7 10>;
622 clock-names = "pclk_pwm";
627 compatible = "rockchip,rk-pwm";
628 reg = <0x20050010 0x10>;
630 pinctrl-names = "default";
631 pinctrl-0 = <&pwm1_pin>;
632 clocks = <&clk_gates7 10>;
633 clock-names = "pclk_pwm";
638 compatible = "rockchip,rk-pwm";
639 reg = <0x20050020 0x10>;
641 pinctrl-names = "default";
642 pinctrl-0 = <&pwm2_pin>;
643 clocks = <&clk_gates7 10>;
644 clock-names = "pclk_pwm";
649 compatible = "rockchip,rk-pwm";
650 reg = <0x20050030 0x10>;
652 pinctrl-names = "default";
653 pinctrl-0 = <&pwm3_pin>;
654 clocks = <&clk_gates7 10>;
655 clock-names = "pclk_pwm";
659 remotectl: pwm@20050030 {
660 compatible = "rockchip,remotectl-pwm";
661 reg = <0x20050030 0x10>;
663 pinctrl-names = "default";
664 pinctrl-0 = <&pwm3_pin>;
665 clocks = <&clk_gates7 10>;
666 clock-names = "pclk_pwm";
668 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
671 dwc_control_usb: dwc-control-usb@20008000 {
672 compatible = "rockchip,rk3126-dwc-control-usb";
673 reg = <0x20008000 0x4>;
674 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
675 <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
676 <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
677 interrupt-names = "otg_bvalid",
680 clocks = <&clk_gates9 13>;
681 clock-names = "hclk_usb_peri";
682 rockchip,remote_wakeup;
683 rockchip,usb_irq_wakeup;
684 resets = <&reset RK3128_RST_USBPOR>;
685 reset-names = "usbphy_por";
687 compatible = "inno,phy";
688 regbase = &dwc_control_usb;
689 rk_usb,bvalid = <0x14c 5 1>;
690 rk_usb,iddig = <0x14c 8 1>;
691 rk_usb,vdmsrcen = <0x184 12 1>;
692 rk_usb,vdpsrcen = <0x184 11 1>;
693 rk_usb,rdmpden = <0x184 10 1>;
694 rk_usb,idpsrcen = <0x184 9 1>;
695 rk_usb,idmsinken = <0x184 8 1>;
696 rk_usb,idpsinken = <0x184 7 1>;
697 rk_usb,dpattach = <0x2c0 7 1>;
698 rk_usb,cpdet = <0x2c0 6 1>;
699 rk_usb,dcpattach = <0x2c0 5 1>;
704 compatible = "rockchip,rk3126_usb20_otg";
705 reg = <0x10180000 0x40000>;
706 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
707 clocks = <&clk_gates1 5>, <&clk_gates5 13>;
708 clock-names = "clk_usbphy0", "hclk_usb0";
709 resets = <&reset RK3128_RST_USBOTG0>, <&reset RK3128_RST_UTMI0>,
710 <&reset RK3128_RST_OTGC0>;
711 reset-names = "otg_ahb", "otg_phy", "otg_controller";
712 /*0 - Normal, 1 - Force Host, 2 - Force Device*/
713 rockchip,usb-mode = <0>;
717 compatible = "rockchip,rk3126_ehci";
718 reg = <0x101c0000 0x20000>;
719 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
720 clocks = <&clk_gates1 6>, <&clk_gates7 3>;
721 clock-names = "clk_usbphy1", "hclk_host0";
722 resets = <&reset RK3128_RST_USBOTG1>, <&reset RK3128_RST_UTMI1>,
723 <&reset RK3128_RST_OTGC1>;
724 reset-names = "host_ahb", "host_phy", "host_controller";
728 compatible = "rockchip,rk3126_ohci";
729 reg = <0x101e0000 0x20000>;
730 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
734 compatible = "rockchip,rk-fb";
735 rockchip,disp-mode = <ONE_DUAL>;
738 rk_screen: rk_screen{
739 compatible = "rockchip,screen";
742 lvds: lvds@20038000 {
743 compatible = "rockchip,rk31xx-lvds";
744 reg = <0x20038000 0x4000>, <0x101100b0 0x01>;
745 reg-names = "mipi_lvds_phy", "mipi_lvds_ctl";
746 clocks = <&clk_gates5 0>, <&clk_gates9 6>, <&clk_gates9 5>;
747 clock-names = "pclk_lvds", "pclk_lvds_ctl", "hclk_vio_h2p";
751 lcdc: lcdc@1010e000 {
752 compatible = "rockchip,rk312x-lcdc";
753 rockchip,prop = <PRMRY>;
754 reg = <0x1010e000 0x1000>;
755 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
756 clocks = <&clk_gates6 0>, <&dclk_lcdc0>, <&clk_gates6 1>, <&sclk_lcdc0>, <&pd_vop>, <&clk_cpll>;
757 clock-names = "aclk_lcdc", "dclk_lcdc", "hclk_lcdc", "sclk_lcdc", "pd_lcdc", "sclk_pll";
758 rockchip,iommu-enabled = <1>;
762 hdmi: hdmi@20034000 {
763 compatible = "rockchip,rk312x-hdmi";
764 reg = <0x20034000 0x4000>;
765 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
766 rockchip,hdmi_lcdc_source = <0>;
767 pinctrl-names = "default", "gpio";
768 pinctrl-0 = <&hdmi_cec &hdmi_sda &hdmi_scl &hdmi_hpd>;
769 pinctrl-1 = <&hdmi_gpio>;
770 clocks = <&clk_gates3 8>, <&pd_hdmi>;
771 clock-names = "pclk_hdmi", "pd_hdmi";
772 rockchip,hdcp_enable = <0>;
773 rockchip,cec_enable = <0>;
778 compatible = "rockchip,rk312x-tve";
779 reg = <0x1010e200 0x100>;
784 compatible = "rockchip,vpu_sub";
786 reg = <0x10106000 0x800>;
787 interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
788 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
789 interrupt-names = "irq_enc", "irq_dec";
791 name = "vpu_service";
795 compatible = "rockchip,hevc_sub";
797 reg = <0x10104000 0x400>;
798 interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
799 interrupt-names = "irq_dec";
801 name = "hevc_service";
804 vpu_combo: vpu_combo@ff9a0000 {
805 compatible = "rockchip,vpu_combo";
807 rockchip,sub = <&vpu>, <&hevc>;
808 clocks = <&clk_vdpu>, <&hclk_vdpu>, <&clk_hevc_core>;
809 clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core";
817 compatible = "rockchip,iep";
819 reg = <0x10108000 0x800>;
820 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
821 clocks = <&clk_gates9 8>, <&clk_gates9 7>;
822 clock-names = "aclk_iep", "hclk_iep";
827 compatible = "rockchip,rk312x-rga";
828 reg = <0x1010c000 0x1000>;
829 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
830 clocks = <&clk_gates6 10>, <&clk_gates6 11>;
831 clock-names = "hclk_rga", "aclk_rga";
837 compatible = "rockchip,vop_mmu";
838 reg = <0x1010e300 0x100>;
839 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
840 interrupt-names = "vop_mmu";
845 compatible = "rockchip,hevc_mmu";
846 reg = <0x10104440 0x40>,
848 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
849 interrupt-names = "hevc_mmu";
854 compatible = "rockchip,vpu_mmu";
855 reg = <0x10106800 0x100>;
856 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
857 interrupt-names = "vpu_mmu";
862 compatible = "rockchip,iep_mmu";
863 reg = <0x10108800 0x100>;
864 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
865 interrupt-names = "iep_mmu";
870 regulator_name = "vdd_arm";
872 clk_core_dvfs_table: clk_core {
880 temp-limit-enable = <0>;
883 normal-temp-limit = <
884 /*delta-temp delta-freq*/
890 performance-temp-limit = <
901 lkg_adjust_volt_en = <1>;
903 def_table_lkg = <35>;
904 min_adjust_freq = <1200000>;
905 lkg_adjust_volt_table = <
914 regulator_name = "vdd_logic";
916 clk_ddr_dvfs_table: clk_ddr {
928 clk_gpu_dvfs_table: clk_gpu {
947 compatible = "rockchip,ion";
948 #address-cells = <1>;
951 ion_cma: rockchip,ion-heap@4 { /* CMA HEAP */
952 compatible = "rockchip,ion-heap";
953 rockchip,ion_heap = <4>;
954 reg = <0x00000000 0x800000>; /* 8MB */
956 rockchip,ion-heap@0 { /* VMALLOC HEAP */
957 compatible = "rockchip,ion-heap";
958 rockchip,ion_heap = <0>;
962 compatible = "rockchip,cif";
963 reg = <0x1010a000 0x2000>;
964 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
965 clocks = <&pd_vip>,<&clk_gates6 5>,<&clk_gates6 4>,<&clk_cif0_in>,<&clk_cif_out>;
966 clock-names = "pd_cif0", "aclk_cif0","hclk_cif0","cif0_in","cif0_out";
970 codec_hdmi_spdif: codec-hdmi-spdif {
971 compatible = "hdmi-spdif";
974 rockchip-hdmi-spdif {
975 compatible = "rockchip-hdmi-spdif";
978 audio-codec = <&codec_hdmi_spdif>;
979 i2s-controller = <&spdif>;
983 codec: codec@20030000 {
984 compatible = "rk312x-codec";
985 reg = <0x20030000 0x4000>;
986 //pinctrl-names = "default";
987 //pinctrl-0 = <&i2s_gpio>;
989 pa_enable_time = <1000>;
990 clocks = <&clk_gates5 14>;
991 clock-names = "g_pclk_acodec";
993 rockchip_audio: audio-rk312x {
994 compatible = "audio-rk312x";
997 audio-codec = <&codec>;
998 i2s-controller = <&i2s1>;
1001 //bitclock-inversion;
1007 audio-codec = <&codec>;
1008 i2s-controller = <&i2s1>;
1011 //bitclock-inversion;