2 * DTS file for CSR SiRFprimaII SoC
4 * Copyright (c) 2012 Cambridge Silicon Radio Limited, a CSR plc group company.
6 * Licensed under GPLv2 or later.
9 /include/ "skeleton.dtsi"
11 compatible = "sirf,prima2";
14 interrupt-parent = <&intc>;
21 compatible = "arm,cortex-a9";
24 d-cache-line-size = <32>;
25 i-cache-line-size = <32>;
26 d-cache-size = <32768>;
27 i-cache-size = <32768>;
29 timebase-frequency = <0>;
31 clock-frequency = <0>;
40 clock-latency = <150000>;
45 compatible = "arm,cortex-a9-pmu";
50 compatible = "simple-bus";
53 ranges = <0x40000000 0x40000000 0x80000000>;
55 l2-cache-controller@80040000 {
56 compatible = "arm,pl310-cache";
57 reg = <0x80040000 0x1000>;
59 arm,tag-latency = <1 1 1>;
60 arm,data-latency = <1 1 1>;
61 arm,filter-ranges = <0 0x40000000>;
64 intc: interrupt-controller@80020000 {
65 #interrupt-cells = <1>;
67 compatible = "sirf,prima2-intc";
68 reg = <0x80020000 0x1000>;
72 compatible = "simple-bus";
75 ranges = <0x88000000 0x88000000 0x40000>;
77 clks: clock-controller@88000000 {
78 compatible = "sirf,prima2-clkc";
79 reg = <0x88000000 0x1000>;
84 rstc: reset-controller@88010000 {
85 compatible = "sirf,prima2-rstc";
86 reg = <0x88010000 0x1000>;
90 rsc-controller@88020000 {
91 compatible = "sirf,prima2-rsc";
92 reg = <0x88020000 0x1000>;
96 compatible = "sirf,prima2-cphifbg";
97 reg = <0x88030000 0x1000>;
103 compatible = "simple-bus";
104 #address-cells = <1>;
106 ranges = <0x90000000 0x90000000 0x10000>;
108 memory-controller@90000000 {
109 compatible = "sirf,prima2-memc";
110 reg = <0x90000000 0x2000>;
116 compatible = "sirf,prima2-memcmon";
117 reg = <0x90002000 0x200>;
124 compatible = "simple-bus";
125 #address-cells = <1>;
127 ranges = <0x90010000 0x90010000 0x30000>;
130 compatible = "sirf,prima2-lcd";
131 reg = <0x90010000 0x20000>;
136 compatible = "sirf,prima2-vpp";
137 reg = <0x90020000 0x10000>;
145 compatible = "simple-bus";
146 #address-cells = <1>;
148 ranges = <0x98000000 0x98000000 0x8000000>;
151 compatible = "powervr,sgx531";
152 reg = <0x98000000 0x8000000>;
159 compatible = "simple-bus";
160 #address-cells = <1>;
162 ranges = <0xa0000000 0xa0000000 0x8000000>;
164 multimedia@a0000000 {
165 compatible = "sirf,prima2-video-codec";
166 reg = <0xa0000000 0x8000000>;
173 compatible = "simple-bus";
174 #address-cells = <1>;
176 ranges = <0xa8000000 0xa8000000 0x2000000>;
179 compatible = "sirf,prima2-dspif";
180 reg = <0xa8000000 0x10000>;
186 compatible = "sirf,prima2-gps";
187 reg = <0xa8010000 0x10000>;
194 compatible = "sirf,prima2-dsp";
195 reg = <0xa9000000 0x1000000>;
203 compatible = "simple-bus";
204 #address-cells = <1>;
206 ranges = <0xb0000000 0xb0000000 0x180000>,
207 <0x56000000 0x56000000 0x1b00000>;
210 compatible = "sirf,prima2-tick";
211 reg = <0xb0020000 0x1000>;
217 compatible = "sirf,prima2-nand";
218 reg = <0xb0030000 0x10000>;
224 compatible = "sirf,prima2-audio";
225 reg = <0xb0040000 0x10000>;
230 uart0: uart@b0050000 {
232 compatible = "sirf,prima2-uart";
233 reg = <0xb0050000 0x1000>;
237 dmas = <&dmac1 5>, <&dmac0 2>;
238 dma-names = "rx", "tx";
241 uart1: uart@b0060000 {
243 compatible = "sirf,prima2-uart";
244 reg = <0xb0060000 0x1000>;
250 uart2: uart@b0070000 {
252 compatible = "sirf,prima2-uart";
253 reg = <0xb0070000 0x1000>;
257 dmas = <&dmac0 6>, <&dmac0 7>;
258 dma-names = "rx", "tx";
263 compatible = "sirf,prima2-usp";
264 reg = <0xb0080000 0x10000>;
268 dmas = <&dmac1 1>, <&dmac1 2>;
269 dma-names = "rx", "tx";
274 compatible = "sirf,prima2-usp";
275 reg = <0xb0090000 0x10000>;
279 dmas = <&dmac0 14>, <&dmac0 15>;
280 dma-names = "rx", "tx";
285 compatible = "sirf,prima2-usp";
286 reg = <0xb00a0000 0x10000>;
290 dmas = <&dmac0 10>, <&dmac0 11>;
291 dma-names = "rx", "tx";
294 dmac0: dma-controller@b00b0000 {
296 compatible = "sirf,prima2-dmac";
297 reg = <0xb00b0000 0x10000>;
303 dmac1: dma-controller@b0160000 {
305 compatible = "sirf,prima2-dmac";
306 reg = <0xb0160000 0x10000>;
313 compatible = "sirf,prima2-vip";
314 reg = <0xb00C0000 0x10000>;
317 sirf,vip-dma-rx-channel = <16>;
322 compatible = "sirf,prima2-spi";
323 reg = <0xb00d0000 0x10000>;
325 sirf,spi-num-chipselects = <1>;
328 dma-names = "rx", "tx";
329 #address-cells = <1>;
337 compatible = "sirf,prima2-spi";
338 reg = <0xb0170000 0x10000>;
340 sirf,spi-num-chipselects = <1>;
343 dma-names = "rx", "tx";
344 #address-cells = <1>;
352 compatible = "sirf,prima2-i2c";
353 reg = <0xb00e0000 0x10000>;
356 #address-cells = <1>;
362 compatible = "sirf,prima2-i2c";
363 reg = <0xb00f0000 0x10000>;
366 #address-cells = <1>;
371 compatible = "sirf,prima2-tsc";
372 reg = <0xb0110000 0x10000>;
377 gpio: pinctrl@b0120000 {
379 #interrupt-cells = <2>;
380 compatible = "sirf,prima2-pinctrl";
381 reg = <0xb0120000 0x10000>;
382 interrupts = <43 44 45 46 47>;
384 interrupt-controller;
386 lcd_16pins_a: lcd0@0 {
388 sirf,pins = "lcd_16bitsgrp";
389 sirf,function = "lcd_16bits";
392 lcd_18pins_a: lcd0@1 {
394 sirf,pins = "lcd_18bitsgrp";
395 sirf,function = "lcd_18bits";
398 lcd_24pins_a: lcd0@2 {
400 sirf,pins = "lcd_24bitsgrp";
401 sirf,function = "lcd_24bits";
404 lcdrom_pins_a: lcdrom0@0 {
406 sirf,pins = "lcdromgrp";
407 sirf,function = "lcdrom";
410 uart0_pins_a: uart0@0 {
412 sirf,pins = "uart0grp";
413 sirf,function = "uart0";
416 uart0_noflow_pins_a: uart0@1 {
418 sirf,pins = "uart0_nostreamctrlgrp";
419 sirf,function = "uart0_nostreamctrl";
422 uart1_pins_a: uart1@0 {
424 sirf,pins = "uart1grp";
425 sirf,function = "uart1";
428 uart2_pins_a: uart2@0 {
430 sirf,pins = "uart2grp";
431 sirf,function = "uart2";
434 uart2_noflow_pins_a: uart2@1 {
436 sirf,pins = "uart2_nostreamctrlgrp";
437 sirf,function = "uart2_nostreamctrl";
440 spi0_pins_a: spi0@0 {
442 sirf,pins = "spi0grp";
443 sirf,function = "spi0";
446 spi1_pins_a: spi1@0 {
448 sirf,pins = "spi1grp";
449 sirf,function = "spi1";
452 i2c0_pins_a: i2c0@0 {
454 sirf,pins = "i2c0grp";
455 sirf,function = "i2c0";
458 i2c1_pins_a: i2c1@0 {
460 sirf,pins = "i2c1grp";
461 sirf,function = "i2c1";
464 pwm0_pins_a: pwm0@0 {
466 sirf,pins = "pwm0grp";
467 sirf,function = "pwm0";
470 pwm1_pins_a: pwm1@0 {
472 sirf,pins = "pwm1grp";
473 sirf,function = "pwm1";
476 pwm2_pins_a: pwm2@0 {
478 sirf,pins = "pwm2grp";
479 sirf,function = "pwm2";
482 pwm3_pins_a: pwm3@0 {
484 sirf,pins = "pwm3grp";
485 sirf,function = "pwm3";
490 sirf,pins = "gpsgrp";
491 sirf,function = "gps";
496 sirf,pins = "vipgrp";
497 sirf,function = "vip";
500 sdmmc0_pins_a: sdmmc0@0 {
502 sirf,pins = "sdmmc0grp";
503 sirf,function = "sdmmc0";
506 sdmmc1_pins_a: sdmmc1@0 {
508 sirf,pins = "sdmmc1grp";
509 sirf,function = "sdmmc1";
512 sdmmc2_pins_a: sdmmc2@0 {
514 sirf,pins = "sdmmc2grp";
515 sirf,function = "sdmmc2";
518 sdmmc3_pins_a: sdmmc3@0 {
520 sirf,pins = "sdmmc3grp";
521 sirf,function = "sdmmc3";
524 sdmmc4_pins_a: sdmmc4@0 {
526 sirf,pins = "sdmmc4grp";
527 sirf,function = "sdmmc4";
530 sdmmc5_pins_a: sdmmc5@0 {
532 sirf,pins = "sdmmc5grp";
533 sirf,function = "sdmmc5";
536 i2s_mclk_pins_a: i2s_mclk@0 {
538 sirf,pins = "i2smclkgrp";
539 sirf,function = "i2s_mclk";
542 i2s_ext_clk_input_pins_a: i2s_ext_clk_input@0 {
544 sirf,pins = "i2s_ext_clk_inputgrp";
545 sirf,function = "i2s_ext_clk_input";
550 sirf,pins = "i2sgrp";
551 sirf,function = "i2s";
554 i2s_no_din_pins_a: i2s_no_din@0 {
556 sirf,pins = "i2s_no_dingrp";
557 sirf,function = "i2s_no_din";
560 i2s_6chn_pins_a: i2s_6chn@0 {
562 sirf,pins = "i2s_6chngrp";
563 sirf,function = "i2s_6chn";
566 ac97_pins_a: ac97@0 {
568 sirf,pins = "ac97grp";
569 sirf,function = "ac97";
572 nand_pins_a: nand@0 {
574 sirf,pins = "nandgrp";
575 sirf,function = "nand";
578 usp0_pins_a: usp0@0 {
580 sirf,pins = "usp0grp";
581 sirf,function = "usp0";
584 usp0_uart_nostreamctrl_pins_a: usp0@1 {
587 "usp0_uart_nostreamctrl_grp";
589 "usp0_uart_nostreamctrl";
592 usp0_only_utfs_pins_a: usp0@2 {
594 sirf,pins = "usp0_only_utfs_grp";
595 sirf,function = "usp0_only_utfs";
598 usp0_only_urfs_pins_a: usp0@3 {
600 sirf,pins = "usp0_only_urfs_grp";
601 sirf,function = "usp0_only_urfs";
604 usp1_pins_a: usp1@0 {
606 sirf,pins = "usp1grp";
607 sirf,function = "usp1";
610 usp1_uart_nostreamctrl_pins_a: usp1@1 {
613 "usp1_uart_nostreamctrl_grp";
615 "usp1_uart_nostreamctrl";
618 usp2_pins_a: usp2@0 {
620 sirf,pins = "usp2grp";
621 sirf,function = "usp2";
624 usp2_uart_nostreamctrl_pins_a: usp2@1 {
627 "usp2_uart_nostreamctrl_grp";
629 "usp2_uart_nostreamctrl";
632 usb0_utmi_drvbus_pins_a: usb0_utmi_drvbus@0 {
634 sirf,pins = "usb0_utmi_drvbusgrp";
635 sirf,function = "usb0_utmi_drvbus";
638 usb1_utmi_drvbus_pins_a: usb1_utmi_drvbus@0 {
640 sirf,pins = "usb1_utmi_drvbusgrp";
641 sirf,function = "usb1_utmi_drvbus";
644 usb1_dp_dn_pins_a: usb1_dp_dn@0 {
646 sirf,pins = "usb1_dp_dngrp";
647 sirf,function = "usb1_dp_dn";
650 uart1_route_io_usb1_pins_a: uart1_route_io_usb1@0 {
651 uart1_route_io_usb1 {
652 sirf,pins = "uart1_route_io_usb1grp";
653 sirf,function = "uart1_route_io_usb1";
656 warm_rst_pins_a: warm_rst@0 {
658 sirf,pins = "warm_rstgrp";
659 sirf,function = "warm_rst";
662 pulse_count_pins_a: pulse_count@0 {
664 sirf,pins = "pulse_countgrp";
665 sirf,function = "pulse_count";
668 cko0_pins_a: cko0@0 {
670 sirf,pins = "cko0grp";
671 sirf,function = "cko0";
674 cko1_pins_a: cko1@0 {
676 sirf,pins = "cko1grp";
677 sirf,function = "cko1";
683 compatible = "sirf,prima2-pwm";
684 reg = <0xb0130000 0x10000>;
689 compatible = "sirf,prima2-efuse";
690 reg = <0xb0140000 0x10000>;
695 compatible = "sirf,prima2-pulsec";
696 reg = <0xb0150000 0x10000>;
702 compatible = "sirf,prima2-pciiobg", "simple-bus";
703 #address-cells = <1>;
705 ranges = <0x56000000 0x56000000 0x1b00000>;
707 sd0: sdhci@56000000 {
709 compatible = "sirf,prima2-sdhc";
710 reg = <0x56000000 0x100000>;
717 sd1: sdhci@56100000 {
719 compatible = "sirf,prima2-sdhc";
720 reg = <0x56100000 0x100000>;
727 sd2: sdhci@56200000 {
729 compatible = "sirf,prima2-sdhc";
730 reg = <0x56200000 0x100000>;
736 sd3: sdhci@56300000 {
738 compatible = "sirf,prima2-sdhc";
739 reg = <0x56300000 0x100000>;
745 sd4: sdhci@56400000 {
747 compatible = "sirf,prima2-sdhc";
748 reg = <0x56400000 0x100000>;
754 sd5: sdhci@56500000 {
756 compatible = "sirf,prima2-sdhc";
757 reg = <0x56500000 0x100000>;
763 compatible = "sirf,prima2-pcicp";
764 reg = <0x57900000 0x100000>;
768 rom-interface@57a00000 {
769 compatible = "sirf,prima2-romif";
770 reg = <0x57a00000 0x100000>;
776 compatible = "sirf,prima2-rtciobg", "sirf-prima2-rtciobg-bus", "simple-bus";
777 #address-cells = <1>;
779 reg = <0x80030000 0x10000>;
782 compatible = "sirf,prima2-gpsrtc";
783 reg = <0x1000 0x1000>;
784 interrupts = <55 56 57>;
788 compatible = "sirf,prima2-sysrtc";
789 reg = <0x2000 0x1000>;
790 interrupts = <52 53 54>;
794 compatible = "sirf,prima2-minigpsrtc";
795 reg = <0x2000 0x1000>;
800 compatible = "sirf,prima2-pwrc";
801 reg = <0x3000 0x1000>;
807 compatible = "simple-bus";
808 #address-cells = <1>;
810 ranges = <0xb8000000 0xb8000000 0x40000>;
813 compatible = "chipidea,ci13611a-prima2";
814 reg = <0xb8000000 0x10000>;
820 compatible = "chipidea,ci13611a-prima2";
821 reg = <0xb8010000 0x10000>;
827 compatible = "synopsys,dwc-ahsata";
828 reg = <0xb8020000 0x10000>;
833 compatible = "sirf,prima2-security";
834 reg = <0xb8030000 0x10000>;