emev2.dtsi 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /*
  2. * Device Tree Source for the EMEV2 SoC
  3. *
  4. * Copyright (C) 2012 Renesas Solutions Corp.
  5. *
  6. * This file is licensed under the terms of the GNU General Public License
  7. * version 2. This program is licensed "as is" without any warranty of any
  8. * kind, whether express or implied.
  9. */
  10. #include "skeleton.dtsi"
  11. #include <dt-bindings/interrupt-controller/irq.h>
  12. / {
  13. compatible = "renesas,emev2";
  14. interrupt-parent = <&gic>;
  15. aliases {
  16. gpio0 = &gpio0;
  17. gpio1 = &gpio1;
  18. gpio2 = &gpio2;
  19. gpio3 = &gpio3;
  20. gpio4 = &gpio4;
  21. };
  22. cpus {
  23. #address-cells = <1>;
  24. #size-cells = <0>;
  25. cpu@0 {
  26. device_type = "cpu";
  27. compatible = "arm,cortex-a9";
  28. reg = <0>;
  29. clock-frequency = <533000000>;
  30. };
  31. cpu@1 {
  32. device_type = "cpu";
  33. compatible = "arm,cortex-a9";
  34. reg = <1>;
  35. clock-frequency = <533000000>;
  36. };
  37. };
  38. gic: interrupt-controller@e0020000 {
  39. compatible = "arm,cortex-a9-gic";
  40. interrupt-controller;
  41. #interrupt-cells = <3>;
  42. reg = <0xe0028000 0x1000>,
  43. <0xe0020000 0x0100>;
  44. };
  45. pmu {
  46. compatible = "arm,cortex-a9-pmu";
  47. interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>,
  48. <0 121 IRQ_TYPE_LEVEL_HIGH>;
  49. };
  50. smu@e0110000 {
  51. compatible = "renesas,emev2-smu";
  52. reg = <0xe0110000 0x10000>;
  53. #address-cells = <2>;
  54. #size-cells = <0>;
  55. c32ki: c32ki {
  56. compatible = "fixed-clock";
  57. clock-frequency = <32768>;
  58. #clock-cells = <0>;
  59. };
  60. pll3_fo: pll3_fo {
  61. compatible = "fixed-factor-clock";
  62. clocks = <&c32ki>;
  63. clock-div = <1>;
  64. clock-mult = <7000>;
  65. #clock-cells = <0>;
  66. };
  67. usia_u0_sclkdiv: usia_u0_sclkdiv {
  68. compatible = "renesas,emev2-smu-clkdiv";
  69. reg = <0x610 0>;
  70. clocks = <&pll3_fo>;
  71. #clock-cells = <0>;
  72. };
  73. usib_u1_sclkdiv: usib_u1_sclkdiv {
  74. compatible = "renesas,emev2-smu-clkdiv";
  75. reg = <0x65c 0>;
  76. clocks = <&pll3_fo>;
  77. #clock-cells = <0>;
  78. };
  79. usib_u2_sclkdiv: usib_u2_sclkdiv {
  80. compatible = "renesas,emev2-smu-clkdiv";
  81. reg = <0x65c 16>;
  82. clocks = <&pll3_fo>;
  83. #clock-cells = <0>;
  84. };
  85. usib_u3_sclkdiv: usib_u3_sclkdiv {
  86. compatible = "renesas,emev2-smu-clkdiv";
  87. reg = <0x660 0>;
  88. clocks = <&pll3_fo>;
  89. #clock-cells = <0>;
  90. };
  91. usia_u0_sclk: usia_u0_sclk {
  92. compatible = "renesas,emev2-smu-gclk";
  93. reg = <0x4a0 1>;
  94. clocks = <&usia_u0_sclkdiv>;
  95. #clock-cells = <0>;
  96. };
  97. usib_u1_sclk: usib_u1_sclk {
  98. compatible = "renesas,emev2-smu-gclk";
  99. reg = <0x4b8 1>;
  100. clocks = <&usib_u1_sclkdiv>;
  101. #clock-cells = <0>;
  102. };
  103. usib_u2_sclk: usib_u2_sclk {
  104. compatible = "renesas,emev2-smu-gclk";
  105. reg = <0x4bc 1>;
  106. clocks = <&usib_u2_sclkdiv>;
  107. #clock-cells = <0>;
  108. };
  109. usib_u3_sclk: usib_u3_sclk {
  110. compatible = "renesas,emev2-smu-gclk";
  111. reg = <0x4c0 1>;
  112. clocks = <&usib_u3_sclkdiv>;
  113. #clock-cells = <0>;
  114. };
  115. sti_sclk: sti_sclk {
  116. compatible = "renesas,emev2-smu-gclk";
  117. reg = <0x528 1>;
  118. clocks = <&c32ki>;
  119. #clock-cells = <0>;
  120. };
  121. };
  122. sti@e0180000 {
  123. compatible = "renesas,em-sti";
  124. reg = <0xe0180000 0x54>;
  125. interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
  126. clocks = <&sti_sclk>;
  127. clock-names = "sclk";
  128. };
  129. uart@e1020000 {
  130. compatible = "renesas,em-uart";
  131. reg = <0xe1020000 0x38>;
  132. interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>;
  133. clocks = <&usia_u0_sclk>;
  134. clock-names = "sclk";
  135. };
  136. uart@e1030000 {
  137. compatible = "renesas,em-uart";
  138. reg = <0xe1030000 0x38>;
  139. interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>;
  140. clocks = <&usib_u1_sclk>;
  141. clock-names = "sclk";
  142. };
  143. uart@e1040000 {
  144. compatible = "renesas,em-uart";
  145. reg = <0xe1040000 0x38>;
  146. interrupts = <0 10 IRQ_TYPE_LEVEL_HIGH>;
  147. clocks = <&usib_u2_sclk>;
  148. clock-names = "sclk";
  149. };
  150. uart@e1050000 {
  151. compatible = "renesas,em-uart";
  152. reg = <0xe1050000 0x38>;
  153. interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>;
  154. clocks = <&usib_u3_sclk>;
  155. clock-names = "sclk";
  156. };
  157. gpio0: gpio@e0050000 {
  158. compatible = "renesas,em-gio";
  159. reg = <0xe0050000 0x2c>, <0xe0050040 0x20>;
  160. interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>,
  161. <0 68 IRQ_TYPE_LEVEL_HIGH>;
  162. gpio-controller;
  163. #gpio-cells = <2>;
  164. ngpios = <32>;
  165. interrupt-controller;
  166. #interrupt-cells = <2>;
  167. };
  168. gpio1: gpio@e0050080 {
  169. compatible = "renesas,em-gio";
  170. reg = <0xe0050080 0x2c>, <0xe00500c0 0x20>;
  171. interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>,
  172. <0 70 IRQ_TYPE_LEVEL_HIGH>;
  173. gpio-controller;
  174. #gpio-cells = <2>;
  175. ngpios = <32>;
  176. interrupt-controller;
  177. #interrupt-cells = <2>;
  178. };
  179. gpio2: gpio@e0050100 {
  180. compatible = "renesas,em-gio";
  181. reg = <0xe0050100 0x2c>, <0xe0050140 0x20>;
  182. interrupts = <0 71 IRQ_TYPE_LEVEL_HIGH>,
  183. <0 72 IRQ_TYPE_LEVEL_HIGH>;
  184. gpio-controller;
  185. #gpio-cells = <2>;
  186. ngpios = <32>;
  187. interrupt-controller;
  188. #interrupt-cells = <2>;
  189. };
  190. gpio3: gpio@e0050180 {
  191. compatible = "renesas,em-gio";
  192. reg = <0xe0050180 0x2c>, <0xe00501c0 0x20>;
  193. interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>,
  194. <0 74 IRQ_TYPE_LEVEL_HIGH>;
  195. gpio-controller;
  196. #gpio-cells = <2>;
  197. ngpios = <32>;
  198. interrupt-controller;
  199. #interrupt-cells = <2>;
  200. };
  201. gpio4: gpio@e0050200 {
  202. compatible = "renesas,em-gio";
  203. reg = <0xe0050200 0x2c>, <0xe0050240 0x20>;
  204. interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>,
  205. <0 76 IRQ_TYPE_LEVEL_HIGH>;
  206. gpio-controller;
  207. #gpio-cells = <2>;
  208. ngpios = <31>;
  209. interrupt-controller;
  210. #interrupt-cells = <2>;
  211. };
  212. };