ramips: add support for WINSTARS WS-WN536P3
authorSven Huang <1036456939@qq.com>
Wed, 5 Jun 2024 02:39:51 +0000 (02:39 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 16 Jun 2024 21:42:59 +0000 (23:42 +0200)
WS-WN536P3 is a 2.4/5 GHz band 11ac router, based on MT7621DA.

Specification:

- SoC               : MediaTek MT7621DA
- RAM               : DDR3 128 MB
- Flash             : SPI-NOR 16MB
- WLAN              : 2.4/5 GHz 2T2R (MediaTek MT7603e/MT7613)
- Ethernet          : 5x 10/100/1000 Mbps
- LEDs              : 1x Sys 1x WIFI 5x Ethernet LEDs(connect to switch)
- Keys              : 1x Reset 1x WPS 1x Turbo
- USB               : x1
- UART              : 1xUART
- settings        : 115200n8

How to upgrade image in uboot

1. press reset button when boot for 5sec.
2. access 192.168.10.1 in web ui.
3. select image and upload

Signed-off-by: Sven Huang <1036456939@qq.com>
target/linux/ramips/dts/mt7621_winstars_ws-wn536p3.dts [new file with mode: 0755]
target/linux/ramips/image/mt7621.mk

diff --git a/target/linux/ramips/dts/mt7621_winstars_ws-wn536p3.dts b/target/linux/ramips/dts/mt7621_winstars_ws-wn536p3.dts
new file mode 100755 (executable)
index 0000000..cd85079
--- /dev/null
@@ -0,0 +1,198 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT\r
+\r
+#include "mt7621.dtsi"\r
+\r
+#include <dt-bindings/gpio/gpio.h>\r
+#include <dt-bindings/input/input.h>\r
+#include <dt-bindings/leds/common.h>\r
+\r
+/ {\r
+       compatible = "winstars,ws-wn536p3", "mediatek,mt7621-soc";\r
+       model = "Winstars WS-WN536P3";\r
+\r
+       aliases {\r
+               led-boot = &led_system_blue;\r
+               led-failsafe = &led_system_blue;\r
+               led-running = &led_system_blue;\r
+               led-upgrade = &led_system_blue;\r
+               label-mac-device = &gmac0;\r
+       };\r
+\r
+       chosen {\r
+               bootargs = "console=ttyS0,115200";\r
+       };\r
+\r
+       keys {\r
+               compatible = "gpio-keys";\r
+\r
+               reset {\r
+                       label = "reset";\r
+                       gpios = <&gpio 18 GPIO_ACTIVE_LOW>;\r
+                       linux,code = <KEY_RESTART>;\r
+               };\r
+\r
+               wps {\r
+                       label = "wps";\r
+                       gpios = <&gpio 13 GPIO_ACTIVE_LOW>;\r
+                       linux,code = <KEY_WPS_BUTTON>;\r
+               };\r
+\r
+               turbo {\r
+                       label = "turbo";\r
+                       gpios = <&gpio 15 GPIO_ACTIVE_LOW>;\r
+                       linux,code = <BTN_0>;\r
+               };\r
+       };\r
+\r
+       leds {\r
+               compatible = "gpio-leds";\r
+\r
+               led_system_blue: led-0 {\r
+                       color = <LED_COLOR_ID_BLUE>;\r
+                       function = LED_FUNCTION_STATUS;\r
+                       gpios = <&gpio 4 GPIO_ACTIVE_LOW>;\r
+               };\r
+\r
+               led-1 {\r
+                       color = <LED_COLOR_ID_BLUE>;\r
+                       function = LED_FUNCTION_WLAN;\r
+                       linux,default-trigger = "phy0tpt";\r
+                       gpios = <&gpio 3 GPIO_ACTIVE_LOW>;\r
+               };\r
+       };\r
+};\r
+\r
+&spi0 {\r
+       status = "okay";\r
+\r
+       flash@0 {\r
+               compatible = "jedec,spi-nor";\r
+               reg = <0>;\r
+               spi-max-frequency = <40000000>;\r
+\r
+               partitions {\r
+                       compatible = "fixed-partitions";\r
+                       #address-cells = <1>;\r
+                       #size-cells = <1>;\r
+\r
+                       partition@0 {\r
+                               label = "u-boot";\r
+                               reg = <0x0 0x30000>;\r
+                               read-only;\r
+                       };\r
+\r
+                       partition@30000 {\r
+                               label = "config";\r
+                               reg = <0x30000 0x10000>;\r
+                               read-only;\r
+                       };\r
+\r
+                       partition@40000 {\r
+                               label = "factory";\r
+                               reg = <0x40000 0x10000>;\r
+                               read-only;\r
+\r
+                               nvmem-layout {\r
+                                       compatible = "fixed-layout";\r
+                                       #address-cells = <1>;\r
+                                       #size-cells = <1>;\r
+\r
+                                       eeprom_factory_0: eeprom@0 {\r
+                                               reg = <0x0 0x400>;\r
+                                       };\r
+\r
+                                       eeprom_factory_8000: eeprom@8000 {\r
+                                               reg = <0x8000 0x4da8>;\r
+                                       };\r
+\r
+                                       macaddr_factory_e000: macaddr@e000 {\r
+                                               reg = <0xe000 0x6>;\r
+                                       };\r
+\r
+                                       macaddr_factory_e006: macaddr@e006 {\r
+                                               reg = <0xe006 0x6>;\r
+                                       };\r
+                               };\r
+                       };\r
+\r
+                       partition@50000 {\r
+                               compatible = "denx,uimage";\r
+                               label = "firmware";\r
+                               reg = <0x50000 0xfb0000>;\r
+                       };\r
+               };\r
+       };\r
+};\r
+\r
+&pcie {\r
+       status = "okay";\r
+};\r
+\r
+&pcie0 {\r
+       wifi@0,0 {\r
+               compatible = "mediatek,mt76";\r
+               reg = <0x0000 0 0 0 0>;\r
+               ieee80211-freq-limit = <2400000 2500000>;\r
+               nvmem-cells = <&eeprom_factory_0>;\r
+               nvmem-cell-names = "eeprom";\r
+       };\r
+};\r
+\r
+&pcie1 {\r
+       wifi@0,0 {\r
+               compatible = "mediatek,mt76";\r
+               reg = <0x0000 0 0 0 0>;\r
+               ieee80211-freq-limit = <5000000 6000000>;\r
+               nvmem-cells = <&eeprom_factory_8000>;\r
+               nvmem-cell-names = "eeprom";\r
+       };\r
+};\r
+\r
+&gmac0 {\r
+       nvmem-cells = <&macaddr_factory_e000>;\r
+       nvmem-cell-names = "mac-address";\r
+};\r
+\r
+&gmac1 {\r
+       status = "okay";\r
+       label = "wan";\r
+       phy-handle = <&ethphy4>;\r
+\r
+       nvmem-cells = <&macaddr_factory_e006>;\r
+       nvmem-cell-names = "mac-address";\r
+};\r
+\r
+&ethphy4 {\r
+       /delete-property/ interrupts;\r
+};\r
+\r
+&switch0 {\r
+       ports {\r
+               port@0 {\r
+                       status = "okay";\r
+                       label = "lan4";\r
+               };\r
+\r
+               port@1 {\r
+                       status = "okay";\r
+                       label = "lan3";\r
+               };\r
+\r
+               port@2 {\r
+                       status = "okay";\r
+                       label = "lan2";\r
+               };\r
+\r
+               port@3 {\r
+                       status = "okay";\r
+                       label = "lan1";\r
+               };\r
+       };\r
+};\r
+\r
+&state_default {\r
+       gpio {\r
+               groups = "i2c", "jtag", "wdt";\r
+               function = "gpio";\r
+       };\r
+};\r
index 6827fdc1eba09cd37432d1323fcd416e62880ff2..ef374d6f4d18509fadf65de3e1333a8a6a93210e 100644 (file)
@@ -2833,6 +2833,17 @@ define Device/wifire_s1500-nbn
 endef
 TARGET_DEVICES += wifire_s1500-nbn
 
+define Device/winstars_ws-wn536p3
+  $(Device/dsa-migration)
+  $(Device/uimage-lzma-loader)
+  IMAGE_SIZE := 16064k
+  DEVICE_VENDOR := Winstars
+  DEVICE_MODEL := WS-WN536P3
+  DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap \
+       kmod-usb3 -uboot-envtools
+endef
+TARGET_DEVICES += winstars_ws-wn536p3
+
 define Device/winstars_ws-wn583a6
   $(Device/dsa-migration)
   $(Device/uimage-lzma-loader)