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 = "simple-bus";
48 ranges = <0x40000000 0x40000000 0x80000000>;
50 l2-cache-controller@80040000 {
51 compatible = "arm,pl310-cache";
52 reg = <0x80040000 0x1000>;
54 arm,tag-latency = <1 1 1>;
55 arm,data-latency = <1 1 1>;
56 arm,filter-ranges = <0 0x40000000>;
59 intc: interrupt-controller@80020000 {
60 #interrupt-cells = <1>;
62 compatible = "sirf,prima2-intc";
63 reg = <0x80020000 0x1000>;
67 compatible = "simple-bus";
70 ranges = <0x88000000 0x88000000 0x40000>;
72 clks: clock-controller@88000000 {
73 compatible = "sirf,prima2-clkc";
74 reg = <0x88000000 0x1000>;
79 rstc: reset-controller@88010000 {
80 compatible = "sirf,prima2-rstc";
81 reg = <0x88010000 0x1000>;
85 rsc-controller@88020000 {
86 compatible = "sirf,prima2-rsc";
87 reg = <0x88020000 0x1000>;
91 compatible = "sirf,prima2-cphifbg";
92 reg = <0x88030000 0x1000>;
98 compatible = "simple-bus";
101 ranges = <0x90000000 0x90000000 0x10000>;
103 memory-controller@90000000 {
104 compatible = "sirf,prima2-memc";
105 reg = <0x90000000 0x2000>;
111 compatible = "sirf,prima2-memcmon";
112 reg = <0x90002000 0x200>;
119 compatible = "simple-bus";
120 #address-cells = <1>;
122 ranges = <0x90010000 0x90010000 0x30000>;
125 compatible = "sirf,prima2-lcd";
126 reg = <0x90010000 0x20000>;
131 compatible = "sirf,prima2-vpp";
132 reg = <0x90020000 0x10000>;
139 compatible = "simple-bus";
140 #address-cells = <1>;
142 ranges = <0x98000000 0x98000000 0x8000000>;
145 compatible = "powervr,sgx531";
146 reg = <0x98000000 0x8000000>;
153 compatible = "simple-bus";
154 #address-cells = <1>;
156 ranges = <0xa0000000 0xa0000000 0x8000000>;
158 multimedia@a0000000 {
159 compatible = "sirf,prima2-video-codec";
160 reg = <0xa0000000 0x8000000>;
167 compatible = "simple-bus";
168 #address-cells = <1>;
170 ranges = <0xa8000000 0xa8000000 0x2000000>;
173 compatible = "sirf,prima2-dspif";
174 reg = <0xa8000000 0x10000>;
179 compatible = "sirf,prima2-gps";
180 reg = <0xa8010000 0x10000>;
186 compatible = "sirf,prima2-dsp";
187 reg = <0xa9000000 0x1000000>;
194 compatible = "simple-bus";
195 #address-cells = <1>;
197 ranges = <0xb0000000 0xb0000000 0x180000>,
198 <0x56000000 0x56000000 0x1b00000>;
201 compatible = "sirf,prima2-tick";
202 reg = <0xb0020000 0x1000>;
208 compatible = "sirf,prima2-nand";
209 reg = <0xb0030000 0x10000>;
215 compatible = "sirf,prima2-audio";
216 reg = <0xb0040000 0x10000>;
221 uart0: uart@b0050000 {
223 compatible = "sirf,prima2-uart";
224 reg = <0xb0050000 0x1000>;
228 dmas = <&dmac1 5>, <&dmac0 2>;
229 dma-names = "rx", "tx";
232 uart1: uart@b0060000 {
234 compatible = "sirf,prima2-uart";
235 reg = <0xb0060000 0x1000>;
241 uart2: uart@b0070000 {
243 compatible = "sirf,prima2-uart";
244 reg = <0xb0070000 0x1000>;
248 dmas = <&dmac0 6>, <&dmac0 7>;
249 dma-names = "rx", "tx";
254 compatible = "sirf,prima2-usp";
255 reg = <0xb0080000 0x10000>;
259 dmas = <&dmac1 1>, <&dmac1 2>;
260 dma-names = "rx", "tx";
265 compatible = "sirf,prima2-usp";
266 reg = <0xb0090000 0x10000>;
270 dmas = <&dmac0 14>, <&dmac0 15>;
271 dma-names = "rx", "tx";
276 compatible = "sirf,prima2-usp";
277 reg = <0xb00a0000 0x10000>;
281 dmas = <&dmac0 10>, <&dmac0 11>;
282 dma-names = "rx", "tx";
285 dmac0: dma-controller@b00b0000 {
287 compatible = "sirf,prima2-dmac";
288 reg = <0xb00b0000 0x10000>;
294 dmac1: dma-controller@b0160000 {
296 compatible = "sirf,prima2-dmac";
297 reg = <0xb0160000 0x10000>;
304 compatible = "sirf,prima2-vip";
305 reg = <0xb00C0000 0x10000>;
308 sirf,vip-dma-rx-channel = <16>;
313 compatible = "sirf,prima2-spi";
314 reg = <0xb00d0000 0x10000>;
316 sirf,spi-num-chipselects = <1>;
319 dma-names = "rx", "tx";
320 #address-cells = <1>;
328 compatible = "sirf,prima2-spi";
329 reg = <0xb0170000 0x10000>;
331 sirf,spi-num-chipselects = <1>;
334 dma-names = "rx", "tx";
335 #address-cells = <1>;
343 compatible = "sirf,prima2-i2c";
344 reg = <0xb00e0000 0x10000>;
347 #address-cells = <1>;
353 compatible = "sirf,prima2-i2c";
354 reg = <0xb00f0000 0x10000>;
357 #address-cells = <1>;
362 compatible = "sirf,prima2-tsc";
363 reg = <0xb0110000 0x10000>;
368 gpio: pinctrl@b0120000 {
370 #interrupt-cells = <2>;
371 compatible = "sirf,prima2-pinctrl";
372 reg = <0xb0120000 0x10000>;
373 interrupts = <43 44 45 46 47>;
375 interrupt-controller;
377 lcd_16pins_a: lcd0@0 {
379 sirf,pins = "lcd_16bitsgrp";
380 sirf,function = "lcd_16bits";
383 lcd_18pins_a: lcd0@1 {
385 sirf,pins = "lcd_18bitsgrp";
386 sirf,function = "lcd_18bits";
389 lcd_24pins_a: lcd0@2 {
391 sirf,pins = "lcd_24bitsgrp";
392 sirf,function = "lcd_24bits";
395 lcdrom_pins_a: lcdrom0@0 {
397 sirf,pins = "lcdromgrp";
398 sirf,function = "lcdrom";
401 uart0_pins_a: uart0@0 {
403 sirf,pins = "uart0grp";
404 sirf,function = "uart0";
407 uart0_noflow_pins_a: uart0@1 {
409 sirf,pins = "uart0_nostreamctrlgrp";
410 sirf,function = "uart0_nostreamctrl";
413 uart1_pins_a: uart1@0 {
415 sirf,pins = "uart1grp";
416 sirf,function = "uart1";
419 uart2_pins_a: uart2@0 {
421 sirf,pins = "uart2grp";
422 sirf,function = "uart2";
425 uart2_noflow_pins_a: uart2@1 {
427 sirf,pins = "uart2_nostreamctrlgrp";
428 sirf,function = "uart2_nostreamctrl";
431 spi0_pins_a: spi0@0 {
433 sirf,pins = "spi0grp";
434 sirf,function = "spi0";
437 spi1_pins_a: spi1@0 {
439 sirf,pins = "spi1grp";
440 sirf,function = "spi1";
443 i2c0_pins_a: i2c0@0 {
445 sirf,pins = "i2c0grp";
446 sirf,function = "i2c0";
449 i2c1_pins_a: i2c1@0 {
451 sirf,pins = "i2c1grp";
452 sirf,function = "i2c1";
455 pwm0_pins_a: pwm0@0 {
457 sirf,pins = "pwm0grp";
458 sirf,function = "pwm0";
461 pwm1_pins_a: pwm1@0 {
463 sirf,pins = "pwm1grp";
464 sirf,function = "pwm1";
467 pwm2_pins_a: pwm2@0 {
469 sirf,pins = "pwm2grp";
470 sirf,function = "pwm2";
473 pwm3_pins_a: pwm3@0 {
475 sirf,pins = "pwm3grp";
476 sirf,function = "pwm3";
481 sirf,pins = "gpsgrp";
482 sirf,function = "gps";
487 sirf,pins = "vipgrp";
488 sirf,function = "vip";
491 sdmmc0_pins_a: sdmmc0@0 {
493 sirf,pins = "sdmmc0grp";
494 sirf,function = "sdmmc0";
497 sdmmc1_pins_a: sdmmc1@0 {
499 sirf,pins = "sdmmc1grp";
500 sirf,function = "sdmmc1";
503 sdmmc2_pins_a: sdmmc2@0 {
505 sirf,pins = "sdmmc2grp";
506 sirf,function = "sdmmc2";
509 sdmmc3_pins_a: sdmmc3@0 {
511 sirf,pins = "sdmmc3grp";
512 sirf,function = "sdmmc3";
515 sdmmc4_pins_a: sdmmc4@0 {
517 sirf,pins = "sdmmc4grp";
518 sirf,function = "sdmmc4";
521 sdmmc5_pins_a: sdmmc5@0 {
523 sirf,pins = "sdmmc5grp";
524 sirf,function = "sdmmc5";
529 sirf,pins = "i2sgrp";
530 sirf,function = "i2s";
533 ac97_pins_a: ac97@0 {
535 sirf,pins = "ac97grp";
536 sirf,function = "ac97";
539 nand_pins_a: nand@0 {
541 sirf,pins = "nandgrp";
542 sirf,function = "nand";
545 usp0_pins_a: usp0@0 {
547 sirf,pins = "usp0grp";
548 sirf,function = "usp0";
551 usp0_uart_nostreamctrl_pins_a: usp0@1 {
554 "usp0_uart_nostreamctrl_grp";
556 "usp0_uart_nostreamctrl";
559 usp0_only_utfs_pins_a: usp0@2 {
561 sirf,pins = "usp0_only_utfs_grp";
562 sirf,function = "usp0_only_utfs";
565 usp0_only_urfs_pins_a: usp0@3 {
567 sirf,pins = "usp0_only_urfs_grp";
568 sirf,function = "usp0_only_urfs";
571 usp1_pins_a: usp1@0 {
573 sirf,pins = "usp1grp";
574 sirf,function = "usp1";
577 usp1_uart_nostreamctrl_pins_a: usp1@1 {
580 "usp1_uart_nostreamctrl_grp";
582 "usp1_uart_nostreamctrl";
585 usp2_pins_a: usp2@0 {
587 sirf,pins = "usp2grp";
588 sirf,function = "usp2";
591 usp2_uart_nostreamctrl_pins_a: usp2@1 {
594 "usp2_uart_nostreamctrl_grp";
596 "usp2_uart_nostreamctrl";
599 usb0_utmi_drvbus_pins_a: usb0_utmi_drvbus@0 {
601 sirf,pins = "usb0_utmi_drvbusgrp";
602 sirf,function = "usb0_utmi_drvbus";
605 usb1_utmi_drvbus_pins_a: usb1_utmi_drvbus@0 {
607 sirf,pins = "usb1_utmi_drvbusgrp";
608 sirf,function = "usb1_utmi_drvbus";
611 usb1_dp_dn_pins_a: usb1_dp_dn@0 {
613 sirf,pins = "usb1_dp_dngrp";
614 sirf,function = "usb1_dp_dn";
617 uart1_route_io_usb1_pins_a: uart1_route_io_usb1@0 {
618 uart1_route_io_usb1 {
619 sirf,pins = "uart1_route_io_usb1grp";
620 sirf,function = "uart1_route_io_usb1";
623 warm_rst_pins_a: warm_rst@0 {
625 sirf,pins = "warm_rstgrp";
626 sirf,function = "warm_rst";
629 pulse_count_pins_a: pulse_count@0 {
631 sirf,pins = "pulse_countgrp";
632 sirf,function = "pulse_count";
635 cko0_pins_a: cko0@0 {
637 sirf,pins = "cko0grp";
638 sirf,function = "cko0";
641 cko1_pins_a: cko1@0 {
643 sirf,pins = "cko1grp";
644 sirf,function = "cko1";
650 compatible = "sirf,prima2-pwm";
651 reg = <0xb0130000 0x10000>;
656 compatible = "sirf,prima2-efuse";
657 reg = <0xb0140000 0x10000>;
662 compatible = "sirf,prima2-pulsec";
663 reg = <0xb0150000 0x10000>;
669 compatible = "sirf,prima2-pciiobg", "simple-bus";
670 #address-cells = <1>;
672 ranges = <0x56000000 0x56000000 0x1b00000>;
674 sd0: sdhci@56000000 {
676 compatible = "sirf,prima2-sdhc";
677 reg = <0x56000000 0x100000>;
684 sd1: sdhci@56100000 {
686 compatible = "sirf,prima2-sdhc";
687 reg = <0x56100000 0x100000>;
694 sd2: sdhci@56200000 {
696 compatible = "sirf,prima2-sdhc";
697 reg = <0x56200000 0x100000>;
703 sd3: sdhci@56300000 {
705 compatible = "sirf,prima2-sdhc";
706 reg = <0x56300000 0x100000>;
712 sd4: sdhci@56400000 {
714 compatible = "sirf,prima2-sdhc";
715 reg = <0x56400000 0x100000>;
721 sd5: sdhci@56500000 {
723 compatible = "sirf,prima2-sdhc";
724 reg = <0x56500000 0x100000>;
730 compatible = "sirf,prima2-pcicp";
731 reg = <0x57900000 0x100000>;
735 rom-interface@57a00000 {
736 compatible = "sirf,prima2-romif";
737 reg = <0x57a00000 0x100000>;
743 compatible = "sirf,prima2-rtciobg", "sirf-prima2-rtciobg-bus", "simple-bus";
744 #address-cells = <1>;
746 reg = <0x80030000 0x10000>;
749 compatible = "sirf,prima2-gpsrtc";
750 reg = <0x1000 0x1000>;
751 interrupts = <55 56 57>;
755 compatible = "sirf,prima2-sysrtc";
756 reg = <0x2000 0x1000>;
757 interrupts = <52 53 54>;
761 compatible = "sirf,prima2-minigpsrtc";
762 reg = <0x2000 0x1000>;
767 compatible = "sirf,prima2-pwrc";
768 reg = <0x3000 0x1000>;
774 compatible = "simple-bus";
775 #address-cells = <1>;
777 ranges = <0xb8000000 0xb8000000 0x40000>;
780 compatible = "chipidea,ci13611a-prima2";
781 reg = <0xb8000000 0x10000>;
787 compatible = "chipidea,ci13611a-prima2";
788 reg = <0xb8010000 0x10000>;
794 compatible = "synopsys,dwc-ahsata";
795 reg = <0xb8020000 0x10000>;
800 compatible = "sirf,prima2-security";
801 reg = <0xb8030000 0x10000>;