ar9331.dtsi 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. #include <dt-bindings/clock/ath79-clk.h>
  2. / {
  3. compatible = "qca,ar9331";
  4. #address-cells = <1>;
  5. #size-cells = <1>;
  6. cpus {
  7. #address-cells = <1>;
  8. #size-cells = <0>;
  9. cpu@0 {
  10. device_type = "cpu";
  11. compatible = "mips,mips24Kc";
  12. clocks = <&pll ATH79_CLK_CPU>;
  13. reg = <0>;
  14. };
  15. };
  16. cpuintc: interrupt-controller {
  17. compatible = "qca,ar7100-cpu-intc";
  18. interrupt-controller;
  19. #interrupt-cells = <1>;
  20. qca,ddr-wb-channel-interrupts = <2>, <3>;
  21. qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>;
  22. };
  23. ref: ref {
  24. compatible = "fixed-clock";
  25. #clock-cells = <0>;
  26. };
  27. ahb {
  28. compatible = "simple-bus";
  29. ranges;
  30. #address-cells = <1>;
  31. #size-cells = <1>;
  32. interrupt-parent = <&cpuintc>;
  33. apb {
  34. compatible = "simple-bus";
  35. ranges;
  36. #address-cells = <1>;
  37. #size-cells = <1>;
  38. interrupt-parent = <&miscintc>;
  39. ddr_ctrl: memory-controller@18000000 {
  40. compatible = "qca,ar7240-ddr-controller";
  41. reg = <0x18000000 0x100>;
  42. #qca,ddr-wb-channel-cells = <1>;
  43. };
  44. uart: uart@18020000 {
  45. compatible = "qca,ar9330-uart";
  46. reg = <0x18020000 0x14>;
  47. interrupts = <3>;
  48. clocks = <&ref>;
  49. clock-names = "uart";
  50. status = "disabled";
  51. };
  52. gpio: gpio@18040000 {
  53. compatible = "qca,ar7100-gpio";
  54. reg = <0x18040000 0x34>;
  55. interrupts = <2>;
  56. ngpios = <30>;
  57. gpio-controller;
  58. #gpio-cells = <2>;
  59. interrupt-controller;
  60. #interrupt-cells = <2>;
  61. status = "disabled";
  62. };
  63. pll: pll-controller@18050000 {
  64. compatible = "qca,ar9330-pll";
  65. reg = <0x18050000 0x100>;
  66. clocks = <&ref>;
  67. clock-names = "ref";
  68. #clock-cells = <1>;
  69. };
  70. miscintc: interrupt-controller@18060010 {
  71. compatible = "qca,ar7240-misc-intc";
  72. reg = <0x18060010 0x4>;
  73. interrupt-parent = <&cpuintc>;
  74. interrupts = <6>;
  75. interrupt-controller;
  76. #interrupt-cells = <1>;
  77. };
  78. rst: reset-controller@1806001c {
  79. compatible = "qca,ar7100-reset";
  80. reg = <0x1806001c 0x4>;
  81. #reset-cells = <1>;
  82. };
  83. };
  84. usb: usb@1b000100 {
  85. compatible = "chipidea,usb2";
  86. reg = <0x1b000000 0x200>;
  87. interrupts = <3>;
  88. resets = <&rst 5>;
  89. phy-names = "usb-phy";
  90. phys = <&usb_phy>;
  91. status = "disabled";
  92. };
  93. spi: spi@1f000000 {
  94. compatible = "qca,ar7100-spi";
  95. reg = <0x1f000000 0x10>;
  96. clocks = <&pll ATH79_CLK_AHB>;
  97. clock-names = "ahb";
  98. #address-cells = <1>;
  99. #size-cells = <0>;
  100. status = "disabled";
  101. };
  102. };
  103. usb_phy: usb-phy {
  104. compatible = "qca,ar7100-usb-phy";
  105. reset-names = "usb-phy", "usb-suspend-override";
  106. resets = <&rst 4>, <&rst 3>;
  107. #phy-cells = <0>;
  108. status = "disabled";
  109. };
  110. };