diff mbox series

[v2,2/2] ramips: add support for Wavlink WS-WN572HP3 4G

Message ID 20221130093343.2796646-2-git@aiyionpri.me
State Superseded, archived
Headers show
Series [v2,1/2] comgt-ncm: add support for quectel modem EC200T-EU | expand

Commit Message

Jan-Niklas Burfeind Nov. 30, 2022, 9:33 a.m. UTC
Wavlink WS-WN572HP3 4G is an 802.11ac
dual-band outdoor router with LTE support.

Specifications;
* Soc: MT7621DAT
* RAM: 128MiB
* Flash: NOR 16MiB GD-25Q128ESIG3
* Wi-Fi:
  * MT7613BEN: 5GHz
  * MT7603EN: 2.4GHz
* Ethernet: 2x 1GbE
* USB: None - only used internally
* LTE Modem: Quectel EC200T-EU
* UART: 115200 baud
* LEDs:
  * 7 blue at the front
    * 1 Power
    * 2 LAN / WAN
    * 1 Status
    * 3 RSSI (annotated 4G)
  * 1 green at the bottom (4G LED)
* Buttons: 1 reset button

Installation:
* press and hold the reset button while powering on the device
* keep it pressed for ten seconds
* connect to 192.168.10.1 via webbrowser (chromium/chrome works, at
  least Firefox 106.0.3 does not)
* upload the sysupgrade image, confirm the checksum, wait 2 minutes
  until the device reboots

Revert to stock firmware:
* same as installation but use the recovery image for WL-WN572HP3

Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
---
 .../dts/mt7621_wavlink_ws-wn572hp3-4g.dts     | 183 ++++++++++++++++++
 target/linux/ramips/image/mt7621.mk           |  17 ++
 .../mt7621/base-files/etc/board.d/02_network  |   1 +
 3 files changed, 201 insertions(+)
 create mode 100644 target/linux/ramips/dts/mt7621_wavlink_ws-wn572hp3-4g.dts

Comments

Arınç ÜNAL Nov. 30, 2022, 9:41 a.m. UTC | #1
On 30.11.2022 12:33, Jan-Niklas Burfeind wrote:
> Wavlink WS-WN572HP3 4G is an 802.11ac
> dual-band outdoor router with LTE support.
> 
> Specifications;
> * Soc: MT7621DAT
> * RAM: 128MiB
> * Flash: NOR 16MiB GD-25Q128ESIG3
> * Wi-Fi:
>    * MT7613BEN: 5GHz
>    * MT7603EN: 2.4GHz
> * Ethernet: 2x 1GbE
> * USB: None - only used internally
> * LTE Modem: Quectel EC200T-EU
> * UART: 115200 baud
> * LEDs:
>    * 7 blue at the front
>      * 1 Power
>      * 2 LAN / WAN
>      * 1 Status
>      * 3 RSSI (annotated 4G)
>    * 1 green at the bottom (4G LED)
> * Buttons: 1 reset button
> 
> Installation:
> * press and hold the reset button while powering on the device
> * keep it pressed for ten seconds
> * connect to 192.168.10.1 via webbrowser (chromium/chrome works, at
>    least Firefox 106.0.3 does not)
> * upload the sysupgrade image, confirm the checksum, wait 2 minutes
>    until the device reboots
> 
> Revert to stock firmware:
> * same as installation but use the recovery image for WL-WN572HP3
> 
> Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>

Acked-by: Arınç ÜNAL <arinc.unal@arinc9.com>

Arınç
Jan-Niklas Burfeind Nov. 30, 2022, 9:53 a.m. UTC | #2
On 11/30/22 10:41, Arınç ÜNAL wrote:
> On 30.11.2022 12:33, Jan-Niklas Burfeind wrote:
>> Wavlink WS-WN572HP3 4G is an 802.11ac
>> dual-band outdoor router with LTE support.
>>
>> Specifications;
>> * Soc: MT7621DAT
>> * RAM: 128MiB
>> * Flash: NOR 16MiB GD-25Q128ESIG3
>> * Wi-Fi:
>>    * MT7613BEN: 5GHz
>>    * MT7603EN: 2.4GHz
>> * Ethernet: 2x 1GbE
>> * USB: None - only used internally
>> * LTE Modem: Quectel EC200T-EU
>> * UART: 115200 baud
>> * LEDs:
>>    * 7 blue at the front
>>      * 1 Power
>>      * 2 LAN / WAN
>>      * 1 Status
>>      * 3 RSSI (annotated 4G)
>>    * 1 green at the bottom (4G LED)
>> * Buttons: 1 reset button
>>
>> Installation:
>> * press and hold the reset button while powering on the device
>> * keep it pressed for ten seconds
>> * connect to 192.168.10.1 via webbrowser (chromium/chrome works, at
>>    least Firefox 106.0.3 does not)
>> * upload the sysupgrade image, confirm the checksum, wait 2 minutes
>>    until the device reboots
>>
>> Revert to stock firmware:
>> * same as installation but use the recovery image for WL-WN572HP3
>>
>> Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
> 
> Acked-by: Arınç ÜNAL <arinc.unal@arinc9.com>
> 
> Arınç
> 

Something must've gone wrong.
Connecting the lan port does not trigger a log message anymore.
WAN still does:
982.295568] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - 
flow control rx/tx

Arınç: Could you have a look at the diff, whether I deleted the node in 
the way you intended?

Not sure what I'm missing now; worked before.

Thanks,
Jan-Niklas Burfeind
Arınç ÜNAL Nov. 30, 2022, 2:29 p.m. UTC | #3
On 30.11.2022 12:53, Jan-Niklas Burfeind wrote:
> On 11/30/22 10:41, Arınç ÜNAL wrote:
>> On 30.11.2022 12:33, Jan-Niklas Burfeind wrote:
>>> Wavlink WS-WN572HP3 4G is an 802.11ac
>>> dual-band outdoor router with LTE support.
>>>
>>> Specifications;
>>> * Soc: MT7621DAT
>>> * RAM: 128MiB
>>> * Flash: NOR 16MiB GD-25Q128ESIG3
>>> * Wi-Fi:
>>>    * MT7613BEN: 5GHz
>>>    * MT7603EN: 2.4GHz
>>> * Ethernet: 2x 1GbE
>>> * USB: None - only used internally
>>> * LTE Modem: Quectel EC200T-EU
>>> * UART: 115200 baud
>>> * LEDs:
>>>    * 7 blue at the front
>>>      * 1 Power
>>>      * 2 LAN / WAN
>>>      * 1 Status
>>>      * 3 RSSI (annotated 4G)
>>>    * 1 green at the bottom (4G LED)
>>> * Buttons: 1 reset button
>>>
>>> Installation:
>>> * press and hold the reset button while powering on the device
>>> * keep it pressed for ten seconds
>>> * connect to 192.168.10.1 via webbrowser (chromium/chrome works, at
>>>    least Firefox 106.0.3 does not)
>>> * upload the sysupgrade image, confirm the checksum, wait 2 minutes
>>>    until the device reboots
>>>
>>> Revert to stock firmware:
>>> * same as installation but use the recovery image for WL-WN572HP3
>>>
>>> Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
>>
>> Acked-by: Arınç ÜNAL <arinc.unal@arinc9.com>
>>
>> Arınç
>>
> 
> Something must've gone wrong.
> Connecting the lan port does not trigger a log message anymore.
> WAN still does:
> 982.295568] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - 
> flow control rx/tx
> 
> Arınç: Could you have a look at the diff, whether I deleted the node in 
> the way you intended?
> 
> Not sure what I'm missing now; worked before.

Your compatible string on the DT is wavlink,ws-wn572hp3-4g but you put 
wavlink,ws-wn572hp3 on 02_network. You should fix this and if it still 
won't work, attach the bootlog.

Arınç
diff mbox series

Patch

diff --git a/target/linux/ramips/dts/mt7621_wavlink_ws-wn572hp3-4g.dts b/target/linux/ramips/dts/mt7621_wavlink_ws-wn572hp3-4g.dts
new file mode 100644
index 0000000000..a9b6b7a0df
--- /dev/null
+++ b/target/linux/ramips/dts/mt7621_wavlink_ws-wn572hp3-4g.dts
@@ -0,0 +1,183 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+	compatible = "wavlink,ws-wn572hp3-4g", "mediatek,mt7621-soc";
+	model = "Wavlink WS-WN572HP3 4G";
+
+	chosen {
+		bootargs = "console=ttyS0,115200";
+	};
+
+	aliases {
+		led-boot = &led_status_blue;
+		led-failsafe = &led_status_blue;
+		led-running = &led_status_blue;
+		led-upgrade = &led_status_blue;
+	};
+
+	keys {
+		compatible = "gpio-keys";
+
+		reset {
+			label = "Reset Button";
+			gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_RESTART>;
+		};
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		rssihigh {
+			label = "blue:rssihigh";
+			gpios = <&gpio 68 GPIO_ACTIVE_LOW>;
+		};
+
+		rssimedium {
+			label = "blue:rssimedium";
+			gpios = <&gpio 81 GPIO_ACTIVE_LOW>;
+		};
+
+		rssilow {
+			label = "blue:rssilow";
+			gpios = <&gpio 80 GPIO_ACTIVE_LOW>;
+		};
+
+		led_status_blue: status_blue {
+			label = "blue:status";
+			gpios = <&gpio 67 GPIO_ACTIVE_LOW>;
+		};
+
+		// gpio 79 would be Quectels PWRKEY if used
+	};
+};
+
+&spi0 {
+	status = "okay";
+
+	flash@0 {
+		compatible = "jedec,spi-nor";
+		reg = <0>;
+		spi-max-frequency = <40000000>;
+
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition@0 {
+				label = "u-boot";
+				reg = <0x0 0x30000>;
+				read-only;
+			};
+
+			partition@30000 {
+				label = "config";
+				reg = <0x30000 0x10000>;
+				read-only;
+			};
+
+			factory: partition@40000 {
+				label = "factory";
+				reg = <0x40000 0x10000>;
+				read-only;
+			};
+
+			partition@50000 {
+				compatible = "denx,fit";
+				label = "firmware";
+				reg = <0x50000 0xf30000>;
+			};
+
+			partition@f00000 {
+				label = "vendor";
+				reg = <0xf80000 0x80000>;
+				read-only;
+			};
+		};
+	};
+};
+
+&pcie {
+	status = "okay";
+};
+
+&pcie0 {
+	wifi0: mt76@0,0 {
+		compatible = "mediatek,mt76";
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x0>;
+	};
+};
+
+&pcie1 {
+	wifi1: mt76@0,0 {
+		compatible = "mediatek,mt76";
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x8000>;
+	};
+};
+
+&gmac0 {
+	nvmem-cells = <&macaddr_factory_e000>;
+	nvmem-cell-names = "mac-address";
+};
+
+&gmac1 {
+	status = "okay";
+	label = "wan";
+	phy-handle = <&ethphy4>;
+
+	nvmem-cells = <&macaddr_factory_e006>;
+	nvmem-cell-names = "mac-address";
+};
+
+&mdio {
+	ethphy4: ethernet-phy@4 {
+		reg = <4>;
+	};
+};
+
+&switch0 {
+	ports {
+		port@1 {
+			status = "okay";
+			label = "lan";
+		};
+	};
+};
+
+&state_default {
+	gpio {
+		groups = "wdt";
+		function = "gpio";
+	};
+};
+
+&factory {
+	compatible = "nvmem-cells";
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	macaddr_factory_e000: macaddr@e000 {
+		reg = <0xe000 0x6>;
+	};
+
+	macaddr_factory_e006: macaddr@e006 {
+		reg = <0xe006 0x6>;
+	};
+};
+
+&wifi0{
+	ieee80211-freq-limit = <2400000 2500000>;
+};
+
+&wifi1{
+	ieee80211-freq-limit = <5000000 6000000>;
+};
+
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index 943fc62ecd..4028e43e39 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -2158,6 +2158,23 @@  define Device/wavlink_wl-wn533a8
 endef
 TARGET_DEVICES += wavlink_wl-wn533a8
 
+define Device/wavlink_ws-wn572hp3-4g
+  $(Device/dsa-migration)
+  BLOCKSIZE := 64k
+  DEVICE_VENDOR := Wavlink
+  DEVICE_MODEL := WS-WN572HP3
+  DEVICE_VARIANT := 4G
+  IMAGE_SIZE := 15040k
+  KERNEL_LOADADDR := 0x82000000
+  KERNEL := kernel-bin | relocate-kernel 0x80001000 | lzma | \
+	fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
+  IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
+	append-rootfs | pad-rootfs | check-size | append-metadata
+  DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap \
+	kmod-usb3 kmod-usb-net-rndis comgt-ncm
+endef
+TARGET_DEVICES += wavlink_ws-wn572hp3-4g
+
 define Device/wevo_11acnas
   $(Device/dsa-migration)
   $(Device/uimage-lzma-loader)
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
index c4fe2153ac..094b7a8b40 100644
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
@@ -50,6 +50,7 @@  ramips_setup_interfaces()
 		;;
 	asiarf,ap7621-001|\
 	humax,e10|\
+	wavlink,ws-wn572hp3|\
 	winstars,ws-wn583a6)
 		ucidef_set_interfaces_lan_wan "lan" "wan"
 		;;