1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
3 #include "qcom-ipq8062-smb208.dtsi"
4 #include <dt-bindings/input/input.h>
5 #include <dt-bindings/leds/common.h>
8 model = "NEC Platforms Aterm WG2600HP3";
9 compatible = "nec,wg2600hp3", "qcom,ipq8062", "qcom,ipq8064";
12 device_type = "memory";
13 reg = <0x42000000 0x1e000000>;
17 label-mac-device = &gmac2;
19 led-boot = &led_power_green;
20 led-failsafe = &led_power_red;
21 led-running = &led_power_green;
22 led-upgrade = &led_power_red;
26 compatible = "gpio-keys";
28 pinctrl-0 = <&buttons_pins>;
29 pinctrl-names = "default";
33 gpios = <&qcom_pinmux 24 GPIO_ACTIVE_LOW>;
34 linux,code = <KEY_RESTART>;
35 debounce-interval = <60>;
41 gpios = <&qcom_pinmux 22 GPIO_ACTIVE_LOW>;
42 linux,code = <KEY_WPS_BUTTON>;
43 debounce-interval = <60>;
49 gpios = <&qcom_pinmux 40 GPIO_ACTIVE_LOW>;
51 linux,input-type = <EV_SW>;
52 debounce-interval = <60>;
58 gpios = <&qcom_pinmux 41 GPIO_ACTIVE_LOW>;
60 linux,input-type = <EV_SW>;
61 debounce-interval = <60>;
67 compatible = "gpio-leds";
69 pinctrl-0 = <&leds_pins>;
70 pinctrl-names = "default";
72 led_power_green: power_green {
73 label = "green:power";
74 gpios = <&qcom_pinmux 14 GPIO_ACTIVE_HIGH>;
77 led_power_red: power_red {
79 gpios = <&qcom_pinmux 35 GPIO_ACTIVE_HIGH>;
83 label = "green:active";
84 gpios = <&qcom_pinmux 42 GPIO_ACTIVE_HIGH>;
89 gpios = <&qcom_pinmux 38 GPIO_ACTIVE_HIGH>;
93 label = "green:wlan2g";
94 gpios = <&qcom_pinmux 55 GPIO_ACTIVE_HIGH>;
95 linux,default-trigger = "phy1tpt";
100 gpios = <&qcom_pinmux 56 GPIO_ACTIVE_HIGH>;
104 label = "green:wlan5g";
105 gpios = <&qcom_pinmux 57 GPIO_ACTIVE_HIGH>;
106 linux,default-trigger = "phy0tpt";
110 label = "red:wlan5g";
111 gpios = <&qcom_pinmux 58 GPIO_ACTIVE_HIGH>;
116 gpios = <&qcom_pinmux 46 GPIO_ACTIVE_HIGH>;
121 gpios = <&qcom_pinmux 36 GPIO_ACTIVE_HIGH>;
125 label = "green:converter";
126 gpios = <&qcom_pinmux 43 GPIO_ACTIVE_HIGH>;
130 label = "red:converter";
131 gpios = <&qcom_pinmux 15 GPIO_ACTIVE_HIGH>;
136 /* nand_pins are used for leds_pins, empty the node
140 /delete-property/ disable;
141 /delete-property/ pullups;
142 /delete-property/ hold;
146 pinctrl-0 = <&akro_pins>;
147 pinctrl-names = "default";
151 pins = "gpio18", "gpio19", "gpio21";
157 pins = "gpio18", "gpio19";
158 drive-strength = <10>;
163 drive-strength = <10>;
168 drive-strength = <12>;
172 buttons_pins: buttons_pins {
174 pins = "gpio22", "gpio24", "gpio40",
177 drive-strength = <2>;
182 leds_pins: leds_pins {
184 pins = "gpio14", "gpio15", "gpio35",
185 "gpio36", "gpio38", "gpio42",
186 "gpio43", "gpio46", "gpio55",
187 "gpio56", "gpio57", "gpio58";
193 pins = "gpio15", "gpio35", "gpio38",
194 "gpio42", "gpio43", "gpio46",
195 "gpio55", "gpio56", "gpio57",
197 drive-strength = <2>;
201 pins = "gpio14", "gpio36";
202 drive-strength = <4>;
207 * Stock firmware has the following settings, so let's do the same.
208 * I don't sure why these are required.
210 akro_pins: akro_pinmux {
212 pins = "gpio17", "gpio26", "gpio47";
214 drive-strength = <2>;
221 drive-strength = <2>;
229 drive-strength = <8>;
237 qcom,mode = <GSBI_PROT_SPI>;
242 pinctrl-0 = <&spi_pins>;
243 pinctrl-names = "default";
245 cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>;
248 compatible = "jedec,spi-nor";
250 spi-max-frequency = <50000000>;
254 compatible = "fixed-partitions";
255 #address-cells = <1>;
260 reg = <0x0000000 0x0020000>;
266 reg = <0x0020000 0x0020000>;
272 reg = <0x0040000 0x0040000>;
278 reg = <0x0080000 0x0080000>;
284 reg = <0x0100000 0x0010000>;
290 reg = <0x0110000 0x0010000>;
296 reg = <0x0120000 0x0080000>;
302 reg = <0x01a0000 0x0080000>;
308 reg = <0x0220000 0x0080000>;
314 reg = <0x02a0000 0x0010000>;
318 factory: partition@2b0000 {
319 label = "PRODUCTDATA";
320 reg = <0x02b0000 0x0030000>;
326 reg = <0x02e0000 0x0040000>;
328 compatible = "nvmem-cells";
329 #address-cells = <1>;
332 precal_ART_1000: precal@1000 {
333 reg = <0x1000 0x2f20>;
336 precal_ART_5000: precal@5000 {
337 reg = <0x5000 0x2f20>;
343 reg = <0x0320000 0x0040000>;
349 reg = <0x0360000 0x0500000>;
354 compatible = "denx,uimage";
356 reg = <0x0860000 0x17a0000>;
371 reg = <0x00000000 0 0 0 0>;
372 #address-cells = <3>;
377 compatible = "qcom,ath10k";
378 reg = <0x00010000 0 0 0 0>;
380 qcom,ath10k-calibration-variant = "NEC-Platforms-WG2600HP3";
382 nvmem-cells = <&macaddr_PRODUCTDATA_12>, <&precal_ART_1000>;
383 nvmem-cell-names = "mac-address", "pre-calibration";
393 reg = <0x00000000 0 0 0 0>;
394 #address-cells = <3>;
399 compatible = "qcom,ath10k";
400 reg = <0x00010000 0 0 0 0>;
402 ieee80211-freq-limit = <2400000 2483000>;
403 qcom,ath10k-calibration-variant = "NEC-Platforms-WG2600HP3";
405 nvmem-cells = <&macaddr_PRODUCTDATA_c>, <&precal_ART_5000>;
406 nvmem-cell-names = "mac-address", "pre-calibration";
414 pinctrl-0 = <&mdio0_pins>;
415 pinctrl-names = "default";
418 compatible = "qca,qca8337";
419 #address-cells = <1>;
424 #address-cells = <1>;
432 tx-internal-delay-ps = <1000>;
443 phy-mode = "internal";
444 phy-handle = <&phy_port1>;
447 #address-cells = <1>;
452 color = <LED_COLOR_ID_GREEN>;
453 function = LED_FUNCTION_WAN;
454 function-enumerator = <1>;
455 default-state = "keep";
460 color = <LED_COLOR_ID_GREEN>;
461 function = LED_FUNCTION_WAN;
462 function-enumerator = <2>;
463 default-state = "keep";
468 color = <LED_COLOR_ID_GREEN>;
469 function = LED_FUNCTION_WAN;
470 function-enumerator = <3>;
471 default-state = "keep";
479 phy-mode = "internal";
480 phy-handle = <&phy_port2>;
483 #address-cells = <1>;
488 color = <LED_COLOR_ID_GREEN>;
489 function = LED_FUNCTION_LAN;
490 function-enumerator = <1>;
491 default-state = "keep";
496 color = <LED_COLOR_ID_GREEN>;
497 function = LED_FUNCTION_LAN;
498 function-enumerator = <2>;
499 default-state = "keep";
504 color = <LED_COLOR_ID_GREEN>;
505 function = LED_FUNCTION_LAN;
506 function-enumerator = <3>;
507 default-state = "keep";
515 phy-mode = "internal";
516 phy-handle = <&phy_port3>;
519 #address-cells = <1>;
524 color = <LED_COLOR_ID_GREEN>;
525 function = LED_FUNCTION_LAN;
526 function-enumerator = <1>;
527 default-state = "keep";
532 color = <LED_COLOR_ID_GREEN>;
533 function = LED_FUNCTION_LAN;
534 function-enumerator = <2>;
535 default-state = "keep";
540 color = <LED_COLOR_ID_GREEN>;
541 function = LED_FUNCTION_LAN;
542 function-enumerator = <3>;
543 default-state = "keep";
551 phy-mode = "internal";
552 phy-handle = <&phy_port4>;
555 #address-cells = <1>;
560 color = <LED_COLOR_ID_GREEN>;
561 function = LED_FUNCTION_LAN;
562 function-enumerator = <1>;
563 default-state = "keep";
568 color = <LED_COLOR_ID_GREEN>;
569 function = LED_FUNCTION_LAN;
570 function-enumerator = <2>;
571 default-state = "keep";
576 color = <LED_COLOR_ID_GREEN>;
577 function = LED_FUNCTION_LAN;
578 function-enumerator = <3>;
579 default-state = "keep";
587 phy-mode = "internal";
588 phy-handle = <&phy_port5>;
591 #address-cells = <1>;
596 color = <LED_COLOR_ID_GREEN>;
597 function = LED_FUNCTION_LAN;
598 function-enumerator = <1>;
599 default-state = "keep";
604 color = <LED_COLOR_ID_GREEN>;
605 function = LED_FUNCTION_LAN;
606 function-enumerator = <2>;
607 default-state = "keep";
612 color = <LED_COLOR_ID_GREEN>;
613 function = LED_FUNCTION_LAN;
614 function-enumerator = <3>;
615 default-state = "keep";
625 qca,sgmii-enable-pll;
626 qca,sgmii-rxclk-falling-edge;
636 #address-cells = <1>;
665 pinctrl-0 = <&rgmii2_pins>;
666 pinctrl-names = "default";
671 nvmem-cells = <&macaddr_factory_0>;
672 nvmem-cell-names = "mac-address";
685 nvmem-cells = <&macaddr_factory_6>;
686 nvmem-cell-names = "mac-address";
695 compatible = "nvmem-cells";
696 #address-cells = <1>;
699 macaddr_factory_0: macaddr@0 {
703 macaddr_factory_6: macaddr@6 {
707 macaddr_PRODUCTDATA_c: macaddr@c {
711 macaddr_PRODUCTDATA_12: macaddr@12 {