zynq-7000.dtsi 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /*
  2. * Copyright (C) 2011 Xilinx
  3. *
  4. * This software is licensed under the terms of the GNU General Public
  5. * License version 2, as published by the Free Software Foundation, and
  6. * may be copied, distributed, and modified under those terms.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. */
  13. /include/ "skeleton.dtsi"
  14. / {
  15. compatible = "xlnx,zynq-7000";
  16. pmu {
  17. compatible = "arm,cortex-a9-pmu";
  18. interrupts = <0 5 4>, <0 6 4>;
  19. interrupt-parent = <&intc>;
  20. reg = < 0xf8891000 0x1000 0xf8893000 0x1000 >;
  21. };
  22. amba {
  23. compatible = "simple-bus";
  24. #address-cells = <1>;
  25. #size-cells = <1>;
  26. interrupt-parent = <&intc>;
  27. ranges;
  28. intc: interrupt-controller@f8f01000 {
  29. compatible = "arm,cortex-a9-gic";
  30. #interrupt-cells = <3>;
  31. #address-cells = <1>;
  32. interrupt-controller;
  33. reg = <0xF8F01000 0x1000>,
  34. <0xF8F00100 0x100>;
  35. };
  36. L2: cache-controller {
  37. compatible = "arm,pl310-cache";
  38. reg = <0xF8F02000 0x1000>;
  39. arm,data-latency = <2 3 2>;
  40. arm,tag-latency = <2 3 2>;
  41. cache-unified;
  42. cache-level = <2>;
  43. };
  44. uart0: uart@e0000000 {
  45. compatible = "xlnx,xuartps";
  46. clocks = <&clkc 23>, <&clkc 40>;
  47. clock-names = "ref_clk", "aper_clk";
  48. reg = <0xE0000000 0x1000>;
  49. interrupts = <0 27 4>;
  50. };
  51. uart1: uart@e0001000 {
  52. compatible = "xlnx,xuartps";
  53. clocks = <&clkc 24>, <&clkc 41>;
  54. clock-names = "ref_clk", "aper_clk";
  55. reg = <0xE0001000 0x1000>;
  56. interrupts = <0 50 4>;
  57. };
  58. slcr: slcr@f8000000 {
  59. compatible = "xlnx,zynq-slcr";
  60. reg = <0xF8000000 0x1000>;
  61. clocks {
  62. #address-cells = <1>;
  63. #size-cells = <0>;
  64. clkc: clkc {
  65. #clock-cells = <1>;
  66. compatible = "xlnx,ps7-clkc";
  67. ps-clk-frequency = <33333333>;
  68. clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x",
  69. "cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x",
  70. "dci", "lqspi", "smc", "pcap", "gem0", "gem1",
  71. "fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1",
  72. "sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1",
  73. "dma", "usb0_aper", "usb1_aper", "gem0_aper",
  74. "gem1_aper", "sdio0_aper", "sdio1_aper",
  75. "spi0_aper", "spi1_aper", "can0_aper", "can1_aper",
  76. "i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper",
  77. "gpio_aper", "lqspi_aper", "smc_aper", "swdt",
  78. "dbg_trc", "dbg_apb";
  79. };
  80. };
  81. };
  82. ttc0: ttc0@f8001000 {
  83. interrupt-parent = <&intc>;
  84. interrupts = < 0 10 4 0 11 4 0 12 4 >;
  85. compatible = "cdns,ttc";
  86. clocks = <&clkc 6>;
  87. reg = <0xF8001000 0x1000>;
  88. clock-ranges;
  89. };
  90. ttc1: ttc1@f8002000 {
  91. interrupt-parent = <&intc>;
  92. interrupts = < 0 37 4 0 38 4 0 39 4 >;
  93. compatible = "cdns,ttc";
  94. clocks = <&clkc 6>;
  95. reg = <0xF8002000 0x1000>;
  96. clock-ranges;
  97. };
  98. scutimer: scutimer@f8f00600 {
  99. interrupt-parent = <&intc>;
  100. interrupts = < 1 13 0x301 >;
  101. compatible = "arm,cortex-a9-twd-timer";
  102. reg = < 0xf8f00600 0x20 >;
  103. clocks = <&clkc 4>;
  104. } ;
  105. };
  106. };