danube.dtsi 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. #include <dt-bindings/gpio/gpio.h>
  2. / {
  3. #address-cells = <1>;
  4. #size-cells = <1>;
  5. compatible = "lantiq,xway", "lantiq,danube";
  6. aliases {
  7. serial0 = &asc1;
  8. };
  9. chosen {
  10. stdout-path = "serial0:115200n8";
  11. };
  12. cpus {
  13. cpu@0 {
  14. compatible = "mips,mips24Kc";
  15. };
  16. };
  17. memory@0 {
  18. device_type = "memory";
  19. };
  20. biu@1f800000 {
  21. #address-cells = <1>;
  22. #size-cells = <1>;
  23. compatible = "lantiq,biu", "simple-bus";
  24. reg = <0x1f800000 0x800000>;
  25. ranges = <0x0 0x1f800000 0x7fffff>;
  26. icu0: icu@80200 {
  27. #interrupt-cells = <1>;
  28. interrupt-controller;
  29. compatible = "lantiq,icu";
  30. reg = <0x80200 0x28
  31. 0x80228 0x28
  32. 0x80250 0x28
  33. 0x80278 0x28
  34. 0x802a0 0x28>;
  35. };
  36. watchdog@803f0 {
  37. compatible = "lantiq,wdt";
  38. reg = <0x803f0 0x10>;
  39. };
  40. };
  41. sram@1f000000 {
  42. #address-cells = <1>;
  43. #size-cells = <1>;
  44. compatible = "lantiq,sram", "simple-bus";
  45. reg = <0x1f000000 0x800000>;
  46. ranges = <0x0 0x1f000000 0x7fffff>;
  47. eiu0: eiu@101000 {
  48. #interrupt-cells = <1>;
  49. interrupt-controller;
  50. compatible = "lantiq,eiu-xway";
  51. reg = <0x101000 0x1000>;
  52. interrupt-parent = <&icu0>;
  53. lantiq,eiu-irqs = <166 135 66>;
  54. };
  55. pmu0: pmu@102000 {
  56. compatible = "lantiq,pmu-xway";
  57. reg = <0x102000 0x1000>;
  58. };
  59. cgu0: cgu@103000 {
  60. compatible = "lantiq,cgu-xway";
  61. reg = <0x103000 0x1000>;
  62. #clock-cells = <1>;
  63. };
  64. vmmc: vmmc@107000 {
  65. status = "disabled";
  66. compatible = "lantiq,vmmc-xway";
  67. reg = <0x103000 0x400>;
  68. interrupt-parent = <&icu0>;
  69. interrupts = <150 151 152 153 154 155>;
  70. };
  71. rcu0: rcu@203000 {
  72. compatible = "lantiq,danube-rcu", "simple-mfd", "syscon";
  73. reg = <0x203000 0x1000>;
  74. ranges = <0x0 0x203000 0x100>;
  75. big-endian;
  76. reset: reset-controller@10 {
  77. compatible = "lantiq,danube-reset";
  78. reg = <0x10 4>, <0x14 4>;
  79. #reset-cells = <2>;
  80. };
  81. usb_phy: usb2-phy@18 {
  82. compatible = "lantiq,danube-usb2-phy";
  83. reg = <0x18 4>;
  84. status = "disabled";
  85. resets = <&reset 4 4>;
  86. reset-names = "ctrl";
  87. #phy-cells = <0>;
  88. };
  89. reboot@10 {
  90. compatible = "syscon-reboot";
  91. reg = <0x10 4>;
  92. regmap = <&rcu0>;
  93. offset = <0x10>;
  94. mask = <0x40000000>;
  95. };
  96. };
  97. };
  98. fpi@10000000 {
  99. #address-cells = <1>;
  100. #size-cells = <1>;
  101. compatible = "lantiq,fpi", "simple-bus";
  102. ranges = <0x0 0x10000000 0xeefffff>;
  103. reg = <0x10000000 0xef00000>;
  104. localbus: localbus@0 {
  105. #address-cells = <2>;
  106. #size-cells = <1>;
  107. ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
  108. 1 0 0x4000000 0x4000010>; /* addsel1 */
  109. compatible = "lantiq,localbus", "simple-bus";
  110. gpiomm: gpiomm@1 {
  111. compatible = "lantiq,gpio-mm";
  112. reg = <1 0x0 0x10 >;
  113. #address-cells = <1>;
  114. #size-cells = <1>;
  115. #gpio-cells = <2>;
  116. gpio-controller;
  117. status = "disabled";
  118. };
  119. };
  120. gptu@e100a00 {
  121. compatible = "lantiq,gptu-xway";
  122. reg = <0xe100a00 0x100>;
  123. interrupt-parent = <&icu0>;
  124. interrupts = <126 127 128 129 130 131>;
  125. };
  126. gpios: stp@e100bb0 {
  127. #gpio-cells = <2>;
  128. compatible = "lantiq,gpio-stp-xway";
  129. gpio-controller;
  130. reg = <0xe100bb0 0x40>;
  131. lantiq,shadow = <0xfff>;
  132. lantiq,groups = <0x3>;
  133. status = "disabled";
  134. };
  135. asc0: serial@e100400 {
  136. compatible = "lantiq,asc";
  137. reg = <0xe100400 0x400>;
  138. interrupt-parent = <&icu0>;
  139. interrupts = <104 105 106>;
  140. status = "disabled";
  141. };
  142. gpio: pinmux@e100b10 {
  143. compatible = "lantiq,danube-pinctrl";
  144. #gpio-cells = <2>;
  145. gpio-controller;
  146. reg = <0xe100b10 0xa0>;
  147. };
  148. asc1: serial@e100c00 {
  149. compatible = "lantiq,asc";
  150. reg = <0xe100c00 0x400>;
  151. interrupt-parent = <&icu0>;
  152. interrupts = <112 113 114>;
  153. };
  154. usb: usb@e101000 {
  155. compatible = "lantiq,danube-usb";
  156. reg = <0xe101000 0x1000
  157. 0xe120000 0x3f000>;
  158. interrupt-parent = <&icu0>;
  159. interrupts = <62>;
  160. dr_mode = "host";
  161. phys = <&usb_phy>;
  162. phy-names = "usb2-phy";
  163. status = "disabled";
  164. };
  165. deu@e103100 {
  166. compatible = "lantiq,deu-danube";
  167. reg = <0xe103100 0xf00>;
  168. };
  169. dma0: dma@e104100 {
  170. compatible = "lantiq,dma-xway";
  171. reg = <0xe104100 0x800>;
  172. };
  173. ebu0: ebu@e105300 {
  174. compatible = "lantiq,ebu-xway";
  175. reg = <0xe105300 0x100>;
  176. };
  177. mei@e116000 {
  178. compatible = "lantiq,mei-xway";
  179. interrupt-parent = <&icu0>;
  180. interrupts = <63>;
  181. };
  182. gsw: etop@e180000 {
  183. compatible = "lantiq,etop-xway";
  184. reg = <0xe180000 0x40000>;
  185. interrupt-parent = <&icu0>;
  186. interrupts = <73 78>;
  187. mac-address = [ 00 11 22 33 44 55 ];
  188. };
  189. ppe@e234000 {
  190. compatible = "lantiq,ppe-danube";
  191. interrupt-parent = <&icu0>;
  192. interrupts = <96>;
  193. };
  194. pci0: pci@e105400 {
  195. status = "disabled";
  196. #address-cells = <3>;
  197. #size-cells = <2>;
  198. #interrupt-cells = <1>;
  199. compatible = "lantiq,pci-xway";
  200. bus-range = <0x0 0x0>;
  201. ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000 /* pci memory */
  202. 0x1000000 0 0x00000000 0xae00000 0 0x200000>; /* io space */
  203. reg = <0x7000000 0x8000 /* config space */
  204. 0xe105400 0x400>; /* pci bridge */
  205. lantiq,bus-clock = <33333333>;
  206. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  207. interrupt-map = <0x7000 0 0 1 &icu0 30 1>; /* slot 14, irq 30 */
  208. req-mask = <0x1>; /* GNT1 */
  209. };
  210. };
  211. adsl {
  212. compatible = "lantiq,adsl-danube";
  213. };
  214. };