ste-nomadik-stn8815.dtsi 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. /*
  2. * Device Tree for the ST-Ericsson Nomadik 8815 STn8815 SoC
  3. */
  4. /include/ "skeleton.dtsi"
  5. / {
  6. #address-cells = <1>;
  7. #size-cells = <1>;
  8. memory {
  9. reg = <0x00000000 0x04000000>,
  10. <0x08000000 0x04000000>;
  11. };
  12. L2: l2-cache {
  13. compatible = "arm,l210-cache";
  14. reg = <0x10210000 0x1000>;
  15. interrupt-parent = <&vica>;
  16. interrupts = <30>;
  17. cache-unified;
  18. cache-level = <2>;
  19. };
  20. mtu0 {
  21. /* Nomadik system timer */
  22. reg = <0x101e2000 0x1000>;
  23. interrupt-parent = <&vica>;
  24. interrupts = <4>;
  25. };
  26. mtu1 {
  27. /* Secondary timer */
  28. reg = <0x101e3000 0x1000>;
  29. interrupt-parent = <&vica>;
  30. interrupts = <5>;
  31. };
  32. gpio0: gpio@101e4000 {
  33. compatible = "st,nomadik-gpio";
  34. reg = <0x101e4000 0x80>;
  35. interrupt-parent = <&vica>;
  36. interrupts = <6>;
  37. interrupt-controller;
  38. #interrupt-cells = <2>;
  39. gpio-controller;
  40. #gpio-cells = <2>;
  41. gpio-bank = <0>;
  42. };
  43. gpio1: gpio@101e5000 {
  44. compatible = "st,nomadik-gpio";
  45. reg = <0x101e5000 0x80>;
  46. interrupt-parent = <&vica>;
  47. interrupts = <7>;
  48. interrupt-controller;
  49. #interrupt-cells = <2>;
  50. gpio-controller;
  51. #gpio-cells = <2>;
  52. gpio-bank = <1>;
  53. };
  54. gpio2: gpio@101e6000 {
  55. compatible = "st,nomadik-gpio";
  56. reg = <0x101e6000 0x80>;
  57. interrupt-parent = <&vica>;
  58. interrupts = <8>;
  59. interrupt-controller;
  60. #interrupt-cells = <2>;
  61. gpio-controller;
  62. #gpio-cells = <2>;
  63. gpio-bank = <2>;
  64. };
  65. gpio3: gpio@101e7000 {
  66. compatible = "st,nomadik-gpio";
  67. reg = <0x101e7000 0x80>;
  68. interrupt-parent = <&vica>;
  69. interrupts = <9>;
  70. interrupt-controller;
  71. #interrupt-cells = <2>;
  72. gpio-controller;
  73. #gpio-cells = <2>;
  74. gpio-bank = <3>;
  75. };
  76. pinctrl {
  77. compatible = "stericsson,nmk-pinctrl-stn8815";
  78. };
  79. /* A NAND flash of 128 MiB */
  80. fsmc: flash@40000000 {
  81. compatible = "stericsson,fsmc-nand";
  82. #address-cells = <1>;
  83. #size-cells = <1>;
  84. reg = <0x10100000 0x1000>, /* FSMC Register*/
  85. <0x40000000 0x2000>, /* NAND Base DATA */
  86. <0x41000000 0x2000>, /* NAND Base ADDR */
  87. <0x40800000 0x2000>; /* NAND Base CMD */
  88. reg-names = "fsmc_regs", "nand_data", "nand_addr", "nand_cmd";
  89. status = "okay";
  90. partition@0 {
  91. label = "X-Loader(NAND)";
  92. reg = <0x0 0x40000>;
  93. };
  94. partition@40000 {
  95. label = "MemInit(NAND)";
  96. reg = <0x40000 0x40000>;
  97. };
  98. partition@80000 {
  99. label = "BootLoader(NAND)";
  100. reg = <0x80000 0x200000>;
  101. };
  102. partition@280000 {
  103. label = "Kernel zImage(NAND)";
  104. reg = <0x280000 0x300000>;
  105. };
  106. partition@580000 {
  107. label = "Root Filesystem(NAND)";
  108. reg = <0x580000 0x1600000>;
  109. };
  110. partition@1b80000 {
  111. label = "User Filesystem(NAND)";
  112. reg = <0x1b80000 0x6480000>;
  113. };
  114. };
  115. external-bus@34000000 {
  116. compatible = "simple-bus";
  117. reg = <0x34000000 0x1000000>;
  118. #address-cells = <1>;
  119. #size-cells = <1>;
  120. ranges = <0 0x34000000 0x1000000>;
  121. ethernet@300 {
  122. compatible = "smsc,lan91c111";
  123. reg = <0x300 0x0fd00>;
  124. };
  125. };
  126. amba {
  127. compatible = "arm,amba-bus";
  128. #address-cells = <1>;
  129. #size-cells = <1>;
  130. ranges;
  131. vica: intc@0x10140000 {
  132. compatible = "arm,versatile-vic";
  133. interrupt-controller;
  134. #interrupt-cells = <1>;
  135. reg = <0x10140000 0x20>;
  136. };
  137. vicb: intc@0x10140020 {
  138. compatible = "arm,versatile-vic";
  139. interrupt-controller;
  140. #interrupt-cells = <1>;
  141. reg = <0x10140020 0x20>;
  142. };
  143. uart0: uart@101fd000 {
  144. compatible = "arm,pl011", "arm,primecell";
  145. reg = <0x101fd000 0x1000>;
  146. interrupt-parent = <&vica>;
  147. interrupts = <12>;
  148. };
  149. uart1: uart@101fb000 {
  150. compatible = "arm,pl011", "arm,primecell";
  151. reg = <0x101fb000 0x1000>;
  152. interrupt-parent = <&vica>;
  153. interrupts = <17>;
  154. };
  155. uart2: uart@101f2000 {
  156. compatible = "arm,pl011", "arm,primecell";
  157. reg = <0x101f2000 0x1000>;
  158. interrupt-parent = <&vica>;
  159. interrupts = <28>;
  160. status = "disabled";
  161. };
  162. rng: rng@101b0000 {
  163. compatible = "arm,primecell";
  164. reg = <0x101b0000 0x1000>;
  165. };
  166. rtc: rtc@101e8000 {
  167. compatible = "arm,pl031", "arm,primecell";
  168. reg = <0x101e8000 0x1000>;
  169. interrupt-parent = <&vica>;
  170. interrupts = <10>;
  171. };
  172. };
  173. };