mmp2.dtsi 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /*
  2. * Copyright (C) 2012 Marvell Technology Group Ltd.
  3. * Author: Haojian Zhuang <haojian.zhuang@marvell.com>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * publishhed by the Free Software Foundation.
  8. */
  9. /include/ "skeleton.dtsi"
  10. / {
  11. aliases {
  12. serial0 = &uart1;
  13. serial1 = &uart2;
  14. serial2 = &uart3;
  15. serial3 = &uart4;
  16. i2c0 = &twsi1;
  17. i2c1 = &twsi2;
  18. };
  19. soc {
  20. #address-cells = <1>;
  21. #size-cells = <1>;
  22. compatible = "simple-bus";
  23. interrupt-parent = <&intc>;
  24. ranges;
  25. L2: l2-cache {
  26. compatible = "marvell,tauros2-cache";
  27. marvell,tauros2-cache-features = <0x3>;
  28. };
  29. axi@d4200000 { /* AXI */
  30. compatible = "mrvl,axi-bus", "simple-bus";
  31. #address-cells = <1>;
  32. #size-cells = <1>;
  33. reg = <0xd4200000 0x00200000>;
  34. ranges;
  35. intc: interrupt-controller@d4282000 {
  36. compatible = "mrvl,mmp2-intc";
  37. interrupt-controller;
  38. #interrupt-cells = <1>;
  39. reg = <0xd4282000 0x1000>;
  40. mrvl,intc-nr-irqs = <64>;
  41. };
  42. intcmux4: interrupt-controller@d4282150 {
  43. compatible = "mrvl,mmp2-mux-intc";
  44. interrupts = <4>;
  45. interrupt-controller;
  46. #interrupt-cells = <1>;
  47. reg = <0x150 0x4>, <0x168 0x4>;
  48. reg-names = "mux status", "mux mask";
  49. mrvl,intc-nr-irqs = <2>;
  50. };
  51. intcmux5: interrupt-controller@d4282154 {
  52. compatible = "mrvl,mmp2-mux-intc";
  53. interrupts = <5>;
  54. interrupt-controller;
  55. #interrupt-cells = <1>;
  56. reg = <0x154 0x4>, <0x16c 0x4>;
  57. reg-names = "mux status", "mux mask";
  58. mrvl,intc-nr-irqs = <2>;
  59. mrvl,clr-mfp-irq = <1>;
  60. };
  61. intcmux9: interrupt-controller@d4282180 {
  62. compatible = "mrvl,mmp2-mux-intc";
  63. interrupts = <9>;
  64. interrupt-controller;
  65. #interrupt-cells = <1>;
  66. reg = <0x180 0x4>, <0x17c 0x4>;
  67. reg-names = "mux status", "mux mask";
  68. mrvl,intc-nr-irqs = <3>;
  69. };
  70. intcmux17: interrupt-controller@d4282158 {
  71. compatible = "mrvl,mmp2-mux-intc";
  72. interrupts = <17>;
  73. interrupt-controller;
  74. #interrupt-cells = <1>;
  75. reg = <0x158 0x4>, <0x170 0x4>;
  76. reg-names = "mux status", "mux mask";
  77. mrvl,intc-nr-irqs = <5>;
  78. };
  79. intcmux35: interrupt-controller@d428215c {
  80. compatible = "mrvl,mmp2-mux-intc";
  81. interrupts = <35>;
  82. interrupt-controller;
  83. #interrupt-cells = <1>;
  84. reg = <0x15c 0x4>, <0x174 0x4>;
  85. reg-names = "mux status", "mux mask";
  86. mrvl,intc-nr-irqs = <15>;
  87. };
  88. intcmux51: interrupt-controller@d4282160 {
  89. compatible = "mrvl,mmp2-mux-intc";
  90. interrupts = <51>;
  91. interrupt-controller;
  92. #interrupt-cells = <1>;
  93. reg = <0x160 0x4>, <0x178 0x4>;
  94. reg-names = "mux status", "mux mask";
  95. mrvl,intc-nr-irqs = <2>;
  96. };
  97. intcmux55: interrupt-controller@d4282188 {
  98. compatible = "mrvl,mmp2-mux-intc";
  99. interrupts = <55>;
  100. interrupt-controller;
  101. #interrupt-cells = <1>;
  102. reg = <0x188 0x4>, <0x184 0x4>;
  103. reg-names = "mux status", "mux mask";
  104. mrvl,intc-nr-irqs = <2>;
  105. };
  106. };
  107. apb@d4000000 { /* APB */
  108. compatible = "mrvl,apb-bus", "simple-bus";
  109. #address-cells = <1>;
  110. #size-cells = <1>;
  111. reg = <0xd4000000 0x00200000>;
  112. ranges;
  113. timer0: timer@d4014000 {
  114. compatible = "mrvl,mmp-timer";
  115. reg = <0xd4014000 0x100>;
  116. interrupts = <13>;
  117. };
  118. uart1: uart@d4030000 {
  119. compatible = "mrvl,mmp-uart";
  120. reg = <0xd4030000 0x1000>;
  121. interrupts = <27>;
  122. status = "disabled";
  123. };
  124. uart2: uart@d4017000 {
  125. compatible = "mrvl,mmp-uart";
  126. reg = <0xd4017000 0x1000>;
  127. interrupts = <28>;
  128. status = "disabled";
  129. };
  130. uart3: uart@d4018000 {
  131. compatible = "mrvl,mmp-uart";
  132. reg = <0xd4018000 0x1000>;
  133. interrupts = <24>;
  134. status = "disabled";
  135. };
  136. uart4: uart@d4016000 {
  137. compatible = "mrvl,mmp-uart";
  138. reg = <0xd4016000 0x1000>;
  139. interrupts = <46>;
  140. status = "disabled";
  141. };
  142. gpio@d4019000 {
  143. compatible = "mrvl,mmp-gpio";
  144. #address-cells = <1>;
  145. #size-cells = <1>;
  146. reg = <0xd4019000 0x1000>;
  147. gpio-controller;
  148. #gpio-cells = <2>;
  149. interrupts = <49>;
  150. interrupt-names = "gpio_mux";
  151. interrupt-controller;
  152. #interrupt-cells = <1>;
  153. ranges;
  154. gcb0: gpio@d4019000 {
  155. reg = <0xd4019000 0x4>;
  156. };
  157. gcb1: gpio@d4019004 {
  158. reg = <0xd4019004 0x4>;
  159. };
  160. gcb2: gpio@d4019008 {
  161. reg = <0xd4019008 0x4>;
  162. };
  163. gcb3: gpio@d4019100 {
  164. reg = <0xd4019100 0x4>;
  165. };
  166. gcb4: gpio@d4019104 {
  167. reg = <0xd4019104 0x4>;
  168. };
  169. gcb5: gpio@d4019108 {
  170. reg = <0xd4019108 0x4>;
  171. };
  172. };
  173. twsi1: i2c@d4011000 {
  174. compatible = "mrvl,mmp-twsi";
  175. reg = <0xd4011000 0x1000>;
  176. interrupts = <7>;
  177. #address-cells = <1>;
  178. #size-cells = <0>;
  179. mrvl,i2c-fast-mode;
  180. status = "disabled";
  181. };
  182. twsi2: i2c@d4025000 {
  183. compatible = "mrvl,mmp-twsi";
  184. reg = <0xd4025000 0x1000>;
  185. interrupts = <58>;
  186. status = "disabled";
  187. };
  188. rtc: rtc@d4010000 {
  189. compatible = "mrvl,mmp-rtc";
  190. reg = <0xd4010000 0x1000>;
  191. interrupts = <1 0>;
  192. interrupt-names = "rtc 1Hz", "rtc alarm";
  193. interrupt-parent = <&intcmux5>;
  194. status = "disabled";
  195. };
  196. };
  197. };
  198. };