ar9132.dtsi 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include <dt-bindings/clock/ath79-clk.h>
  3. #include "ath79.dtsi"
  4. / {
  5. compatible = "qca,ar9132";
  6. #address-cells = <1>;
  7. #size-cells = <1>;
  8. chosen {
  9. bootargs = "console=ttyS0,115200";
  10. };
  11. cpus {
  12. #address-cells = <1>;
  13. #size-cells = <0>;
  14. cpu@0 {
  15. device_type = "cpu";
  16. compatible = "mips,mips24Kc";
  17. clocks = <&pll ATH79_CLK_CPU>;
  18. reg = <0>;
  19. };
  20. };
  21. cpuintc: interrupt-controller {
  22. compatible = "qca,ar9132-cpu-intc", "qca,ar7100-cpu-intc";
  23. interrupt-controller;
  24. #interrupt-cells = <1>;
  25. qca,ddr-wb-channel-interrupts = <2>, <3>, <4>, <5>;
  26. qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>,
  27. <&ddr_ctrl 0>, <&ddr_ctrl 1>;
  28. };
  29. ahb {
  30. compatible = "simple-bus";
  31. ranges;
  32. #address-cells = <1>;
  33. #size-cells = <1>;
  34. interrupt-parent = <&cpuintc>;
  35. apb {
  36. compatible = "simple-bus";
  37. ranges;
  38. #address-cells = <1>;
  39. #size-cells = <1>;
  40. interrupt-parent = <&miscintc>;
  41. ddr_ctrl: memory-controller@18000000 {
  42. compatible = "qca,ar9132-ddr-controller",
  43. "qca,ar7240-ddr-controller";
  44. reg = <0x18000000 0x100>;
  45. #qca,ddr-wb-channel-cells = <1>;
  46. };
  47. uart: uart@18020000 {
  48. compatible = "ns8250";
  49. reg = <0x18020000 0x20>;
  50. interrupts = <3>;
  51. clocks = <&pll ATH79_CLK_AHB>;
  52. clock-names = "uart";
  53. reg-io-width = <4>;
  54. reg-shift = <2>;
  55. no-loopback-test;
  56. status = "disabled";
  57. };
  58. gpio: gpio@18040000 {
  59. compatible = "qca,ar9132-gpio",
  60. "qca,ar7100-gpio";
  61. reg = <0x18040000 0x30>;
  62. interrupts = <2>;
  63. ngpios = <22>;
  64. gpio-controller;
  65. #gpio-cells = <2>;
  66. interrupt-controller;
  67. #interrupt-cells = <2>;
  68. };
  69. pll: pll-controller@18050000 {
  70. compatible = "qca,ar9132-pll",
  71. "qca,ar9130-pll", "syscon";
  72. reg = <0x18050000 0x20>;
  73. clock-names = "ref";
  74. /* The board must provides the ref clock */
  75. #clock-cells = <1>;
  76. clock-output-names = "cpu", "ddr", "ahb";
  77. };
  78. wdt: wdt@18060008 {
  79. compatible = "qca,ar7130-wdt";
  80. reg = <0x18060008 0x8>;
  81. interrupts = <4>;
  82. clocks = <&pll ATH79_CLK_AHB>;
  83. clock-names = "wdt";
  84. };
  85. miscintc: interrupt-controller@18060010 {
  86. compatible = "qca,ar9132-misc-intc",
  87. "qca,ar7100-misc-intc";
  88. reg = <0x18060010 0x8>;
  89. interrupt-parent = <&cpuintc>;
  90. interrupts = <6>;
  91. interrupt-controller;
  92. #interrupt-cells = <1>;
  93. };
  94. rst: reset-controller@1806001c {
  95. compatible = "qca,ar9132-reset",
  96. "qca,ar7100-reset";
  97. reg = <0x1806001c 0x4>;
  98. #reset-cells = <1>;
  99. };
  100. };
  101. usb: usb@1b000100 {
  102. compatible = "qca,ar7100-ehci", "generic-ehci";
  103. reg = <0x1b000100 0x100>;
  104. interrupts = <3>;
  105. resets = <&rst 5>;
  106. has-transaction-translator;
  107. phy-names = "usb";
  108. phys = <&usb_phy>;
  109. status = "disabled";
  110. };
  111. spi: spi@1f000000 {
  112. compatible = "qca,ar9132-spi", "qca,ar7100-spi";
  113. reg = <0x1f000000 0x10>;
  114. clocks = <&pll ATH79_CLK_AHB>;
  115. clock-names = "ahb";
  116. status = "disabled";
  117. #address-cells = <1>;
  118. #size-cells = <0>;
  119. };
  120. wmac: wmac@180c0000 {
  121. compatible = "qca,ar9130-wmac";
  122. reg = <0x180c0000 0x230000>;
  123. interrupts = <2>;
  124. status = "disabled";
  125. };
  126. };
  127. usb_phy: usb-phy {
  128. compatible = "qca,ar7200-usb-phy";
  129. reset-names = "usb-phy", "usb-suspend-override";
  130. resets = <&rst 4>, <&rst 3>;
  131. #phy-cells = <0>;
  132. status = "disabled";
  133. };
  134. };
  135. &eth0 {
  136. compatible = "qca,ar9130-eth", "syscon";
  137. reg = <0x19000000 0x200
  138. 0x18070000 0x4>;
  139. pll-data = <0x1a000000 0x13000a44 0x00441099>;
  140. pll-reg = <0x4 0x14 20>;
  141. pll-handle = <&pll>;
  142. resets = <&rst 9>;
  143. reset-names = "mac";
  144. qca,mac-idx = <0>;
  145. };