sunxi.dtsi 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. /*
  2. * Copyright 2012 Maxime Ripard
  3. *
  4. * Maxime Ripard <maxime.ripard@free-electrons.com>
  5. *
  6. * The code contained herein is licensed under the GNU General Public
  7. * License. You may obtain a copy of the GNU General Public License
  8. * Version 2 or later at the following locations:
  9. *
  10. * http://www.opensource.org/licenses/gpl-license.html
  11. * http://www.gnu.org/copyleft/gpl.html
  12. */
  13. /include/ "skeleton.dtsi"
  14. / {
  15. interrupt-parent = <&intc>;
  16. cpus {
  17. cpu@0 {
  18. compatible = "arm,cortex-a8";
  19. };
  20. };
  21. clocks {
  22. #address-cells = <1>;
  23. #size-cells = <1>;
  24. ranges;
  25. /*
  26. * This is a dummy clock, to be used as placeholder on
  27. * other mux clocks when a specific parent clock is not
  28. * yet implemented. It should be dropped when the driver
  29. * is complete.
  30. */
  31. dummy: dummy {
  32. #clock-cells = <0>;
  33. compatible = "fixed-clock";
  34. clock-frequency = <0>;
  35. };
  36. osc24M_fixed: osc24M_fixed {
  37. #clock-cells = <0>;
  38. compatible = "fixed-clock";
  39. clock-frequency = <24000000>;
  40. };
  41. osc24M: osc24M@01c20050 {
  42. #clock-cells = <0>;
  43. compatible = "allwinner,sun4i-osc-clk";
  44. reg = <0x01c20050 0x4>;
  45. clocks = <&osc24M_fixed>;
  46. };
  47. osc32k: osc32k {
  48. #clock-cells = <0>;
  49. compatible = "fixed-clock";
  50. clock-frequency = <32768>;
  51. };
  52. pll1: pll1@01c20000 {
  53. #clock-cells = <0>;
  54. compatible = "allwinner,sun4i-pll1-clk";
  55. reg = <0x01c20000 0x4>;
  56. clocks = <&osc24M>;
  57. };
  58. /* dummy is 200M */
  59. cpu: cpu@01c20054 {
  60. #clock-cells = <0>;
  61. compatible = "allwinner,sun4i-cpu-clk";
  62. reg = <0x01c20054 0x4>;
  63. clocks = <&osc32k>, <&osc24M>, <&pll1>, <&dummy>;
  64. };
  65. axi: axi@01c20054 {
  66. #clock-cells = <0>;
  67. compatible = "allwinner,sun4i-axi-clk";
  68. reg = <0x01c20054 0x4>;
  69. clocks = <&cpu>;
  70. };
  71. ahb: ahb@01c20054 {
  72. #clock-cells = <0>;
  73. compatible = "allwinner,sun4i-ahb-clk";
  74. reg = <0x01c20054 0x4>;
  75. clocks = <&axi>;
  76. };
  77. apb0: apb0@01c20054 {
  78. #clock-cells = <0>;
  79. compatible = "allwinner,sun4i-apb0-clk";
  80. reg = <0x01c20054 0x4>;
  81. clocks = <&ahb>;
  82. };
  83. /* dummy is pll62 */
  84. apb1_mux: apb1_mux@01c20058 {
  85. #clock-cells = <0>;
  86. compatible = "allwinner,sun4i-apb1-mux-clk";
  87. reg = <0x01c20058 0x4>;
  88. clocks = <&osc24M>, <&dummy>, <&osc32k>;
  89. };
  90. apb1: apb1@01c20058 {
  91. #clock-cells = <0>;
  92. compatible = "allwinner,sun4i-apb1-clk";
  93. reg = <0x01c20058 0x4>;
  94. clocks = <&apb1_mux>;
  95. };
  96. };
  97. soc {
  98. compatible = "simple-bus";
  99. #address-cells = <1>;
  100. #size-cells = <1>;
  101. reg = <0x01c20000 0x300000>;
  102. ranges;
  103. timer@01c20c00 {
  104. compatible = "allwinner,sunxi-timer";
  105. reg = <0x01c20c00 0x90>;
  106. interrupts = <22>;
  107. clocks = <&osc24M>;
  108. };
  109. wdt: watchdog@01c20c90 {
  110. compatible = "allwinner,sunxi-wdt";
  111. reg = <0x01c20c90 0x10>;
  112. };
  113. intc: interrupt-controller@01c20400 {
  114. compatible = "allwinner,sunxi-ic";
  115. reg = <0x01c20400 0x400>;
  116. interrupt-controller;
  117. #interrupt-cells = <1>;
  118. };
  119. uart0: serial@01c28000 {
  120. compatible = "snps,dw-apb-uart";
  121. reg = <0x01c28000 0x400>;
  122. interrupts = <1>;
  123. reg-shift = <2>;
  124. reg-io-width = <4>;
  125. clocks = <&osc>;
  126. status = "disabled";
  127. };
  128. uart1: serial@01c28400 {
  129. compatible = "snps,dw-apb-uart";
  130. reg = <0x01c28400 0x400>;
  131. interrupts = <2>;
  132. reg-shift = <2>;
  133. reg-io-width = <4>;
  134. clocks = <&osc>;
  135. status = "disabled";
  136. };
  137. };
  138. };