rt3050.dtsi 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  1. /dts-v1/;
  2. / {
  3. #address-cells = <1>;
  4. #size-cells = <1>;
  5. compatible = "ralink,rt3050-soc", "ralink,rt3052-soc", "ralink,rt3350-soc";
  6. cpus {
  7. #address-cells = <1>;
  8. #size-cells = <0>;
  9. cpu@0 {
  10. compatible = "mips,mips24KEc";
  11. reg = <0>;
  12. };
  13. };
  14. chosen {
  15. bootargs = "console=ttyS0,57600";
  16. };
  17. aliases {
  18. spi0 = &spi0;
  19. serial0 = &uartlite;
  20. };
  21. cpuintc: cpuintc {
  22. #address-cells = <0>;
  23. #interrupt-cells = <1>;
  24. interrupt-controller;
  25. compatible = "mti,cpu-interrupt-controller";
  26. };
  27. palmbus: palmbus@10000000 {
  28. compatible = "palmbus";
  29. reg = <0x10000000 0x200000>;
  30. ranges = <0x0 0x10000000 0x1FFFFF>;
  31. #address-cells = <1>;
  32. #size-cells = <1>;
  33. sysc: sysc@0 {
  34. compatible = "ralink,rt3050-sysc", "syscon";
  35. reg = <0x0 0x100>;
  36. };
  37. timer: timer@100 {
  38. compatible = "ralink,rt3050-timer", "ralink,rt2880-timer";
  39. reg = <0x100 0x20>;
  40. interrupt-parent = <&intc>;
  41. interrupts = <1>;
  42. };
  43. watchdog: watchdog@120 {
  44. compatible = "ralink,rt3050-wdt", "ralink,rt2880-wdt";
  45. reg = <0x120 0x10>;
  46. resets = <&rstctrl 8>;
  47. reset-names = "wdt";
  48. interrupt-parent = <&intc>;
  49. interrupts = <1>;
  50. };
  51. intc: intc@200 {
  52. compatible = "ralink,rt3050-intc", "ralink,rt2880-intc";
  53. reg = <0x200 0x100>;
  54. resets = <&rstctrl 19>;
  55. reset-names = "intc";
  56. interrupt-controller;
  57. #interrupt-cells = <1>;
  58. interrupt-parent = <&cpuintc>;
  59. interrupts = <2>;
  60. };
  61. memc: memc@300 {
  62. compatible = "ralink,rt3050-memc";
  63. reg = <0x300 0x100>;
  64. resets = <&rstctrl 20>;
  65. reset-names = "mc";
  66. interrupt-parent = <&intc>;
  67. interrupts = <3>;
  68. };
  69. uart: uart@500 {
  70. compatible = "ralink,rt3050-uart", "ralink,rt2880-uart", "ns16550a";
  71. reg = <0x500 0x100>;
  72. resets = <&rstctrl 12>;
  73. reset-names = "uart";
  74. interrupt-parent = <&intc>;
  75. interrupts = <5>;
  76. reg-shift = <2>;
  77. status = "disabled";
  78. };
  79. gpio0: gpio@600 {
  80. compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
  81. reg = <0x600 0x34>;
  82. gpio-controller;
  83. #gpio-cells = <2>;
  84. ralink,gpio-base = <0>;
  85. ralink,num-gpios = <24>;
  86. ralink,register-map = [ 00 04 08 0c
  87. 20 24 28 2c
  88. 30 34 ];
  89. resets = <&rstctrl 13>;
  90. reset-names = "pio";
  91. interrupt-parent = <&intc>;
  92. interrupts = <6>;
  93. };
  94. gpio1: gpio@638 {
  95. compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
  96. reg = <0x638 0x24>;
  97. gpio-controller;
  98. #gpio-cells = <2>;
  99. ralink,gpio-base = <24>;
  100. ralink,num-gpios = <16>;
  101. ralink,register-map = [ 00 04 08 0c
  102. 10 14 18 1c
  103. 20 24 ];
  104. status = "disabled";
  105. };
  106. gpio2: gpio@660 {
  107. compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
  108. reg = <0x660 0x24>;
  109. gpio-controller;
  110. #gpio-cells = <2>;
  111. ralink,gpio-base = <40>;
  112. ralink,num-gpios = <12>;
  113. ralink,register-map = [ 00 04 08 0c
  114. 10 14 18 1c
  115. 20 24 ];
  116. status = "disabled";
  117. };
  118. gdma: gdma@700 {
  119. compatible = "ralink,rt305x-gdma";
  120. reg = <0x700 0x100>;
  121. resets = <&rstctrl 14>;
  122. reset-names = "dma";
  123. interrupt-parent = <&intc>;
  124. interrupts = <7>;
  125. #dma-cells = <1>;
  126. #dma-channels = <8>;
  127. #dma-requests = <8>;
  128. status = "disabled";
  129. };
  130. i2c@900 {
  131. compatible = "ralink,rt2880-i2c";
  132. reg = <0x900 0x100>;
  133. resets = <&rstctrl 16>;
  134. reset-names = "i2c";
  135. #address-cells = <1>;
  136. #size-cells = <0>;
  137. status = "disabled";
  138. pinctrl-names = "default";
  139. pinctrl-0 = <&i2c_pins>;
  140. };
  141. i2s@a00 {
  142. compatible = "ralink,rt3050-i2s";
  143. reg = <0xa00 0x100>;
  144. resets = <&rstctrl 17>;
  145. reset-names = "i2s";
  146. interrupt-parent = <&intc>;
  147. interrupts = <10>;
  148. txdma-req = <2>;
  149. dmas = <&gdma 4>;
  150. dma-names = "tx";
  151. status = "disabled";
  152. };
  153. spi0: spi@b00 {
  154. compatible = "ralink,rt3050-spi", "ralink,rt2880-spi";
  155. reg = <0xb00 0x100>;
  156. resets = <&rstctrl 18>;
  157. reset-names = "spi";
  158. #address-cells = <1>;
  159. #size-cells = <0>;
  160. pinctrl-names = "default";
  161. pinctrl-0 = <&spi_pins>;
  162. status = "disabled";
  163. };
  164. uartlite: uartlite@c00 {
  165. compatible = "ralink,rt3050-uart", "ralink,rt2880-uart", "ns16550a";
  166. reg = <0xc00 0x100>;
  167. resets = <&rstctrl 19>;
  168. reset-names = "uartl";
  169. interrupt-parent = <&intc>;
  170. interrupts = <12>;
  171. reg-shift = <2>;
  172. pinctrl-names = "default";
  173. pinctrl-0 = <&uartlite_pins>;
  174. };
  175. };
  176. pinctrl: pinctrl {
  177. compatible = "ralink,rt2880-pinmux";
  178. pinctrl-names = "default";
  179. pinctrl-0 = <&state_default>;
  180. state_default: pinctrl0 {
  181. sdram {
  182. groups = "sdram";
  183. function = "sdram";
  184. };
  185. };
  186. i2c_pins: i2c_pins {
  187. i2c_pins {
  188. groups = "i2c";
  189. function = "i2c";
  190. };
  191. };
  192. spi_pins: spi_pins {
  193. spi_pins {
  194. groups = "spi";
  195. function = "spi";
  196. };
  197. };
  198. rgmii_pins: rgmii {
  199. rgmii {
  200. groups = "rgmii";
  201. function = "rgmii";
  202. };
  203. };
  204. uartlite_pins: uartlite {
  205. uart {
  206. groups = "uartlite";
  207. function = "uartlite";
  208. };
  209. };
  210. };
  211. rstctrl: rstctrl {
  212. compatible = "ralink,rt3050-reset", "ralink,rt2880-reset";
  213. #reset-cells = <1>;
  214. };
  215. clkctrl: clkctrl {
  216. compatible = "ralink,rt2880-clock";
  217. #clock-cells = <1>;
  218. };
  219. usbphy: usbphy {
  220. compatible = "ralink,rt3050-usbphy";
  221. #phy-cells = <0>;
  222. ralink,sysctl = <&sysc>;
  223. resets = <&rstctrl 22>;
  224. reset-names = "host";
  225. clocks = <&clkctrl 18>;
  226. clock-names = "host";
  227. };
  228. ethernet: ethernet@10100000 {
  229. compatible = "ralink,rt3050-eth";
  230. reg = <0x10100000 0x10000>;
  231. resets = <&rstctrl 21>;
  232. reset-names = "fe";
  233. interrupt-parent = <&cpuintc>;
  234. interrupts = <5>;
  235. mediatek,switch = <&esw>;
  236. };
  237. esw: esw@10110000 {
  238. compatible = "ralink,rt3050-esw";
  239. reg = <0x10110000 0x8000>;
  240. resets = <&rstctrl 23>;
  241. reset-names = "esw";
  242. interrupt-parent = <&intc>;
  243. interrupts = <17>;
  244. };
  245. wmac: wmac@10180000 {
  246. compatible = "ralink,rt3050-wmac", "ralink,rt2880-wmac";
  247. reg = <0x10180000 0x40000>;
  248. interrupt-parent = <&cpuintc>;
  249. interrupts = <6>;
  250. ralink,eeprom = "soc_wmac.eeprom";
  251. };
  252. otg: otg@101c0000 {
  253. #address-cells = <1>;
  254. #size-cells = <0>;
  255. compatible = "ralink,rt3050-otg", "snps,dwc2";
  256. reg = <0x101c0000 0x40000>;
  257. interrupt-parent = <&intc>;
  258. interrupts = <18>;
  259. resets = <&rstctrl 22>;
  260. reset-names = "otg";
  261. status = "disabled";
  262. otg_port1: port@1 {
  263. reg = <1>;
  264. #trigger-source-cells = <0>;
  265. };
  266. };
  267. };