qcom-ipq8064-wg2600hp.dts 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374
  1. #include "qcom-ipq8064-v2.0.dtsi"
  2. #include <dt-bindings/input/input.h>
  3. / {
  4. model = "NEC Aterm WG2600HP";
  5. compatible = "nec,wg2600hp", "qcom,ipq8064";
  6. memory@0 {
  7. reg = <0x42000000 0x1e000000>;
  8. device_type = "memory";
  9. };
  10. aliases {
  11. mdio-gpio0 = &mdio0;
  12. led-boot = &power_green;
  13. led-failsafe = &power_red;
  14. led-running = &power_green;
  15. led-upgrade = &power_green;
  16. };
  17. keys {
  18. compatible = "gpio-keys";
  19. pinctrl-0 = <&button_pins>;
  20. pinctrl-names = "default";
  21. wps {
  22. label = "wps";
  23. gpios = <&qcom_pinmux 16 GPIO_ACTIVE_LOW>;
  24. linux,code = <KEY_WPS_BUTTON>;
  25. };
  26. reset {
  27. label = "reset";
  28. gpios = <&qcom_pinmux 54 GPIO_ACTIVE_LOW>;
  29. linux,code = <KEY_RESTART>;
  30. };
  31. bridge {
  32. label = "bridge";
  33. gpios = <&qcom_pinmux 24 GPIO_ACTIVE_LOW>;
  34. linux,code = <BTN_0>;
  35. linux,input-type = <EV_SW>;
  36. };
  37. converter {
  38. label = "converter";
  39. gpios = <&qcom_pinmux 25 GPIO_ACTIVE_LOW>;
  40. linux,code = <BTN_0>;
  41. linux,input-type = <EV_SW>;
  42. };
  43. };
  44. leds {
  45. compatible = "gpio-leds";
  46. pinctrl-0 = <&led_pins>;
  47. pinctrl-names = "default";
  48. converter_green {
  49. label = "green:converter";
  50. gpios = <&qcom_pinmux 6 GPIO_ACTIVE_HIGH>;
  51. };
  52. power_red: power_red {
  53. label = "red:power";
  54. gpios = <&qcom_pinmux 7 GPIO_ACTIVE_HIGH>;
  55. };
  56. active_green {
  57. label = "green:active";
  58. gpios = <&qcom_pinmux 8 GPIO_ACTIVE_HIGH>;
  59. };
  60. active_red {
  61. label = "red:active";
  62. gpios = <&qcom_pinmux 9 GPIO_ACTIVE_HIGH>;
  63. };
  64. power_green: power_green {
  65. label = "green:power";
  66. gpios = <&qcom_pinmux 14 GPIO_ACTIVE_HIGH>;
  67. };
  68. converter_red {
  69. label = "red:converter";
  70. gpios = <&qcom_pinmux 15 GPIO_ACTIVE_HIGH>;
  71. };
  72. wlan2g_green {
  73. label = "green:wlan2g";
  74. gpios = <&qcom_pinmux 55 GPIO_ACTIVE_HIGH>;
  75. };
  76. wlan2g_red {
  77. label = "red:wlan2g";
  78. gpios = <&qcom_pinmux 56 GPIO_ACTIVE_HIGH>;
  79. };
  80. wlan5g_green {
  81. label = "green:wlan5g";
  82. gpios = <&qcom_pinmux 57 GPIO_ACTIVE_HIGH>;
  83. };
  84. wlan5g_red {
  85. label = "red:wlan5g";
  86. gpios = <&qcom_pinmux 58 GPIO_ACTIVE_HIGH>;
  87. };
  88. tv_green {
  89. label = "green:tv";
  90. gpios = <&qcom_pinmux 64 GPIO_ACTIVE_HIGH>;
  91. };
  92. tv_red {
  93. label = "red:tv";
  94. gpios = <&qcom_pinmux 65 GPIO_ACTIVE_HIGH>;
  95. };
  96. };
  97. };
  98. &CPU_SPC {
  99. status = "disabled";
  100. };
  101. &adm_dma {
  102. status = "okay";
  103. };
  104. &mdio0 {
  105. status = "okay";
  106. pinctrl-0 = <&mdio0_pins>;
  107. pinctrl-names = "default";
  108. ethernet-phy@0 {
  109. reg = <0>;
  110. qca,ar8327-initvals = <
  111. 0x00004 0x06000000 /* PAD0_MODE */
  112. 0x0000c 0x00080080 /* PAD6_MODE */
  113. 0x000e4 0x0006a545 /* MAC_POWER_SEL */
  114. 0x000e0 0xc74164de /* SGMII_CTRL */
  115. 0x0007c 0x0000004e /* PORT0_STATUS */
  116. 0x00094 0x0000004e /* PORT6_STATUS */
  117. >;
  118. };
  119. ethernet-phy@4 {
  120. reg = <4>;
  121. };
  122. };
  123. &gmac1 {
  124. status = "okay";
  125. phy-mode = "rgmii";
  126. qcom,id = <1>;
  127. pinctrl-0 = <&rgmii2_pins>;
  128. pinctrl-names = "default";
  129. mtd-mac-address = <&PRODUCTDATA 6>;
  130. fixed-link {
  131. speed = <1000>;
  132. full-duplex;
  133. };
  134. };
  135. &gmac2 {
  136. status = "okay";
  137. phy-mode = "sgmii";
  138. qcom,id = <2>;
  139. mtd-mac-address = <&PRODUCTDATA 0>;
  140. fixed-link {
  141. speed = <1000>;
  142. full-duplex;
  143. };
  144. };
  145. &gsbi5 {
  146. status = "okay";
  147. qcom,mode = <GSBI_PROT_SPI>;
  148. spi@1a280000 {
  149. status = "okay";
  150. pinctrl-0 = <&spi_pins>;
  151. pinctrl-names = "default";
  152. cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>;
  153. flash@0 {
  154. compatible = "jedec,spi-nor";
  155. spi-max-frequency = <50000000>;
  156. reg = <0>;
  157. partitions {
  158. compatible = "fixed-partitions";
  159. #address-cells = <1>;
  160. #size-cells = <1>;
  161. SBL1@0 {
  162. label = "SBL1";
  163. reg = <0x0 0x20000>;
  164. read-only;
  165. };
  166. MIBIB@20000 {
  167. label = "MIBIB";
  168. reg = <0x20000 0x20000>;
  169. read-only;
  170. };
  171. SBL2@40000 {
  172. label = "SBL2";
  173. reg = <0x40000 0x40000>;
  174. read-only;
  175. };
  176. SBL3@80000 {
  177. label = "SBL3";
  178. reg = <0x80000 0x80000>;
  179. read-only;
  180. };
  181. DDRCONFIG@100000 {
  182. label = "DDRCONFIG";
  183. reg = <0x100000 0x10000>;
  184. read-only;
  185. };
  186. SSD@110000 {
  187. label = "SSD";
  188. reg = <0x110000 0x10000>;
  189. read-only;
  190. };
  191. TZ@120000 {
  192. label = "TZ";
  193. reg = <0x120000 0x80000>;
  194. read-only;
  195. };
  196. RPM@1a0000 {
  197. label = "RPM";
  198. reg = <0x1a0000 0x80000>;
  199. read-only;
  200. };
  201. APPSBL@220000 {
  202. label = "APPSBL";
  203. reg = <0x220000 0x80000>;
  204. read-only;
  205. };
  206. APPSBLENV@2a0000 {
  207. label = "APPSBLENV";
  208. reg = <0x2a0000 0x10000>;
  209. };
  210. PRODUCTDATA: PRODUCTDATA@2b0000 {
  211. label = "PRODUCTDATA";
  212. reg = <0x2b0000 0x30000>;
  213. read-only;
  214. };
  215. ART@2e0000 {
  216. label = "ART";
  217. reg = <0x2e0000 0x40000>;
  218. read-only;
  219. };
  220. TP@320000 {
  221. label = "TP";
  222. reg = <0x320000 0x40000>;
  223. read-only;
  224. };
  225. TINY@360000 {
  226. label = "TINY";
  227. reg = <0x360000 0x500000>;
  228. read-only;
  229. };
  230. firmware@860000 {
  231. compatible = "denx,uimage";
  232. label = "firmware";
  233. reg = <0x860000 0x17a0000>;
  234. };
  235. };
  236. };
  237. };
  238. };
  239. &usb3_0 {
  240. status = "okay";
  241. pinctrl-0 = <&usb_pwr_en_pins>;
  242. pinctrl-names = "default";
  243. };
  244. &usb3_1 {
  245. status = "okay";
  246. };
  247. &pcie0 {
  248. status = "okay";
  249. };
  250. &pcie1 {
  251. status = "okay";
  252. max-link-speed = <1>;
  253. };
  254. &qcom_pinmux {
  255. button_pins: button_pins {
  256. mux {
  257. pins = "gpio16", "gpio54", "gpio24", "gpio25";
  258. function = "gpio";
  259. drive-strength = <2>;
  260. bias-pull-up;
  261. };
  262. };
  263. led_pins: led_pins {
  264. mux {
  265. pins = "gpio6", "gpio7", "gpio8", "gpio9", "gpio14",
  266. "gpio15", "gpio55", "gpio56", "gpio57", "gpio58",
  267. "gpio64", "gpio65";
  268. function = "gpio";
  269. drive-strength = <2>;
  270. bias-pull-down;
  271. };
  272. };
  273. spi_pins: spi_pins {
  274. mux {
  275. pins = "gpio18", "gpio19", "gpio21";
  276. function = "gsbi5";
  277. bias-pull-down;
  278. };
  279. data {
  280. pins = "gpio18", "gpio19";
  281. drive-strength = <10>;
  282. };
  283. cs {
  284. pins = "gpio20";
  285. drive-strength = <10>;
  286. bias-pull-up;
  287. };
  288. clk {
  289. pins = "gpio21";
  290. drive-strength = <12>;
  291. };
  292. };
  293. usb_pwr_en_pins: usb_pwr_en_pins {
  294. mux {
  295. pins = "gpio22";
  296. function = "gpio";
  297. drive-strength = <2>;
  298. bias-pull-down;
  299. output-high;
  300. };
  301. };
  302. };