rt2880.dtsi 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. / {
  2. #address-cells = <1>;
  3. #size-cells = <1>;
  4. compatible = "ralink,rt2880-soc";
  5. cpus {
  6. #address-cells = <1>;
  7. #size-cells = <0>;
  8. cpu@0 {
  9. compatible = "mips,mips24KEc";
  10. reg = <0>;
  11. };
  12. };
  13. chosen {
  14. bootargs = "console=ttyS0,57600";
  15. };
  16. aliases {
  17. serial0 = &uartlite;
  18. };
  19. cpuintc: cpuintc {
  20. #address-cells = <0>;
  21. #interrupt-cells = <1>;
  22. interrupt-controller;
  23. compatible = "mti,cpu-interrupt-controller";
  24. };
  25. palmbus: palmbus@300000 {
  26. compatible = "palmbus";
  27. reg = <0x300000 0x200000>;
  28. ranges = <0x0 0x300000 0x1FFFFF>;
  29. #address-cells = <1>;
  30. #size-cells = <1>;
  31. sysc: sysc@0 {
  32. compatible = "ralink,rt2880-sysc";
  33. reg = <0x000 0x100>;
  34. };
  35. timer: timer@100 {
  36. compatible = "ralink,rt2880-timer";
  37. reg = <0x100 0x20>;
  38. interrupt-parent = <&intc>;
  39. interrupts = <1>;
  40. status = "disabled";
  41. };
  42. watchdog: watchdog@120 {
  43. compatible = "ralink,rt2880-wdt";
  44. reg = <0x120 0x10>;
  45. };
  46. intc: intc@200 {
  47. compatible = "ralink,rt2880-intc";
  48. reg = <0x200 0x100>;
  49. interrupt-controller;
  50. #interrupt-cells = <1>;
  51. interrupt-parent = <&cpuintc>;
  52. interrupts = <2>;
  53. };
  54. memc: memc@300 {
  55. compatible = "ralink,rt2880-memc";
  56. reg = <0x300 0x100>;
  57. };
  58. gpio0: gpio@600 {
  59. compatible = "ralink,rt2880-gpio";
  60. reg = <0x600 0x34>;
  61. gpio-controller;
  62. #gpio-cells = <2>;
  63. ralink,gpio-base = <0>;
  64. ralink,nr-gpio = <24>;
  65. ralink,register-map = [ 00 04 08 0c
  66. 20 24 28 2c
  67. 30 34 ];
  68. };
  69. gpio1: gpio@638 {
  70. compatible = "ralink,rt2880-gpio";
  71. reg = <0x638 0x24>;
  72. gpio-controller;
  73. #gpio-cells = <2>;
  74. ralink,gpio-base = <24>;
  75. ralink,nr-gpio = <16>;
  76. ralink,register-map = [ 00 04 08 0c
  77. 10 14 18 1c
  78. 20 24 ];
  79. status = "disabled";
  80. };
  81. gpio2: gpio@660 {
  82. compatible = "ralink,rt2880-gpio";
  83. reg = <0x660 0x24>;
  84. gpio-controller;
  85. #gpio-cells = <2>;
  86. ralink,gpio-base = <40>;
  87. ralink,nr-gpio = <32>;
  88. ralink,register-map = [ 00 04 08 0c
  89. 10 14 18 1c
  90. 20 24 ];
  91. status = "disabled";
  92. };
  93. i2c: i2c@900 {
  94. compatible = "ralink,rt2880-i2c";
  95. reg = <0x900 0x100>;
  96. resets = <&rstctrl 9>;
  97. reset-names = "i2c";
  98. #address-cells = <1>;
  99. #size-cells = <0>;
  100. status = "disabled";
  101. pinctrl-names = "default";
  102. pinctrl-0 = <&i2c_pins>;
  103. };
  104. uartlite: uartlite@c00 {
  105. compatible = "ralink,rt2880-uart", "ns16550a";
  106. reg = <0xc00 0x100>;
  107. interrupt-parent = <&intc>;
  108. interrupts = <8>;
  109. reg-shift = <2>;
  110. };
  111. };
  112. pinctrl: pinctrl {
  113. compatible = "ralink,rt2880-pinmux";
  114. pinctrl-names = "default";
  115. pinctrl-0 = <&state_default>;
  116. state_default: pinctrl0 {
  117. sdram {
  118. ralink,group = "sdram";
  119. ralink,function = "sdram";
  120. };
  121. };
  122. i2c_pins: i2c_pins {
  123. i2c_pins {
  124. ralink,group = "i2c";
  125. ralink,function = "i2c";
  126. };
  127. };
  128. spi_pins: spi_pins {
  129. spi_pins {
  130. ralink,group = "spi";
  131. ralink,function = "spi";
  132. };
  133. };
  134. uartlite_pins: uartlite {
  135. uart {
  136. ralink,group = "uartlite";
  137. ralink,function = "uartlite";
  138. };
  139. };
  140. };
  141. rstctrl: rstctrl {
  142. compatible = "ralink,rt2880-reset";
  143. #reset-cells = <1>;
  144. };
  145. clkctrl: clkctrl {
  146. compatible = "ralink,rt2880-clock";
  147. #clock-cells = <1>;
  148. };
  149. pci: pci@440000 {
  150. compatible = "ralink,rt288x-pci";
  151. reg = <0x00440000 0x20000>;
  152. #address-cells = <3>;
  153. #size-cells = <2>;
  154. status = "disabled";
  155. };
  156. ethernet: ethernet@400000 {
  157. compatible = "ralink,rt2880-eth";
  158. reg = <0x00400000 0x10000>;
  159. #address-cells = <1>;
  160. #size-cells = <0>;
  161. resets = <&rstctrl 18>;
  162. reset-names = "fe";
  163. interrupt-parent = <&cpuintc>;
  164. interrupts = <5>;
  165. status = "disabled";
  166. port@0 {
  167. compatible = "ralink,rt2880-port", "mediatek,eth-port";
  168. reg = <0>;
  169. };
  170. mdio-bus {
  171. #address-cells = <1>;
  172. #size-cells = <0>;
  173. status = "disabled";
  174. };
  175. };
  176. wmac: wmac@480000 {
  177. compatible = "ralink,rt2880-wmac";
  178. reg = <0x480000 0x40000>;
  179. interrupt-parent = <&cpuintc>;
  180. interrupts = <6>;
  181. ralink,eeprom = "soc_wmac.eeprom";
  182. };
  183. };