ar9344_pcs_cr5000.dts 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. /dts-v1/;
  3. #include <dt-bindings/gpio/gpio.h>
  4. #include <dt-bindings/input/input.h>
  5. #include "ar9344.dtsi"
  6. / {
  7. model = "PowerCloud Systems CR5000";
  8. compatible = "pcs,cr5000", "qca,ar9344";
  9. aliases {
  10. serial0 = &uart;
  11. led-boot = &status;
  12. led-failsafe = &status;
  13. led-running = &status;
  14. led-upgrade = &status;
  15. };
  16. keys {
  17. compatible = "gpio-keys-polled";
  18. poll-interval = <20>;
  19. pinctrl-names = "default";
  20. pinctrl-0 = <&jtag_disable_pins>;
  21. reset {
  22. label = "Reset button";
  23. linux,code = <KEY_RESTART>;
  24. gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
  25. debounce-interval = <60>;
  26. };
  27. wps {
  28. label = "WPS button";
  29. linux,code = <KEY_WPS_BUTTON>;
  30. gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
  31. debounce-interval = <60>;
  32. };
  33. };
  34. leds {
  35. compatible = "gpio-leds";
  36. status: power {
  37. label = "pcs:amber:power";
  38. gpios = <&gpio 2 GPIO_ACTIVE_LOW>,
  39. <&gpio 4 GPIO_ACTIVE_LOW>;
  40. default-state = "on";
  41. };
  42. wlan2g {
  43. label = "pcs:blue:wlan";
  44. gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
  45. linux,default-trigger = "phy0tpt";
  46. };
  47. wps_white {
  48. label = "pcs:white:wps";
  49. gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
  50. };
  51. };
  52. };
  53. &ref {
  54. clock-frequency = <25000000>;
  55. };
  56. &uart {
  57. status = "okay";
  58. };
  59. &gpio {
  60. status = "okay";
  61. };
  62. &spi {
  63. num-cs = <1>;
  64. status = "okay";
  65. flash@0 {
  66. compatible = "jedec,spi-nor";
  67. reg = <0>;
  68. spi-max-frequency = <25000000>;
  69. partitions {
  70. compatible = "fixed-partitions";
  71. #address-cells = <1>;
  72. #size-cells = <1>;
  73. uboot: partition@0 {
  74. label = "u-boot";
  75. reg = <0x000000 0x040000>;
  76. read-only;
  77. };
  78. partition@40000 {
  79. label = "u-boot-env";
  80. reg = <0x040000 0x010000>;
  81. read-only;
  82. };
  83. partition@50000 {
  84. compatible = "denx,uimage";
  85. label = "firmware";
  86. reg = <0x050000 0x07a0000>;
  87. };
  88. art: partition@7f0000 {
  89. label = "art";
  90. reg = <0x7f0000 0x010000>;
  91. read-only;
  92. };
  93. };
  94. };
  95. };
  96. &usb {
  97. status = "okay";
  98. #address-cells = <1>;
  99. #size-cells = <0>;
  100. hub_port1: port@1 {
  101. reg = <1>;
  102. #trigger-source-cells = <0>;
  103. };
  104. };
  105. &usb_phy {
  106. status = "okay";
  107. };
  108. &pcie {
  109. status = "okay";
  110. ath9k: wifi@0,0 {
  111. compatible = "pci168c,0030";
  112. reg = <0x0000 0 0 0 0>;
  113. mtd-mac-address = <&art 0x5002>;
  114. #gpio-cells = <2>;
  115. gpio-controller;
  116. };
  117. };
  118. &mdio0 {
  119. status = "okay";
  120. phy-mask = <0>;
  121. phy0: ethernet-phy@0 {
  122. reg = <0>;
  123. phy-mode = "rgmii";
  124. qca,ar8327-initvals = <
  125. 0x04 0x07600000 /* PORT0 PAD MODE CTRL */
  126. 0x10 0x81000080 /* POWER_ON_STRAP */
  127. 0x50 0xcc35cc35 /* LED_CTRL0 */
  128. 0x54 0xca35ca35 /* LED_CTRL1 */
  129. 0x58 0xc935c935 /* LED_CTRL2 */
  130. 0x5c 0x03ffff00 /* LED_CTRL3 */
  131. 0x7c 0x0000007e /* PORT0_STATUS */
  132. >;
  133. };
  134. };
  135. &eth0 {
  136. #address-cells = <1>;
  137. #size-cells = <0>;
  138. status = "okay";
  139. /* default for ar934x, except for 1000M */
  140. pll-data = <0x06000000 0x00000101 0x00001616>;
  141. mtd-mac-address = <&art 0x0>;
  142. phy-mode = "rgmii";
  143. phy-handle = <&phy0>;
  144. aliases {
  145. ag0 = &eth1;
  146. };
  147. port@0 {
  148. compatible = "swconfig,port";
  149. reg = <0>;
  150. swconfig,segment = "lan";
  151. swconfig,portmap = <1 1>;
  152. };
  153. port@1 {
  154. compatible = "swconfig,port";
  155. reg = <1>;
  156. swconfig,segment = "lan";
  157. swconfig,portmap = <2 2>;
  158. };
  159. port@2 {
  160. compatible = "swconfig,port";
  161. reg = <2>;
  162. swconfig,segment = "lan";
  163. swconfig,portmap = <3 3>;
  164. };
  165. port@3 {
  166. compatible = "swconfig,port";
  167. reg = <3>;
  168. swconfig,segment = "lan";
  169. swconfig,portmap = <4 4>;
  170. };
  171. port@4 {
  172. compatible = "swconfig,port";
  173. reg = <4>;
  174. swconfig,segment = "wan";
  175. swconfig,portmap = <5 5>;
  176. };
  177. };
  178. &wmac {
  179. status = "okay";
  180. mtd-cal-data = <&art 0x1000>;
  181. mtd-mac-address = <&art 0x1002>;
  182. };