[PATCH] ramips: add support for Huasifei WS1208V2

Enrico Mioso mrkiko.rs at gmail.com
Thu Jan 26 11:31:49 PST 2023




On Thu, 26 Jan 2023, arinc9.unal at gmail.com wrote:

> Date: Thu, 26 Jan 2023 19:35:27
> From: arinc9.unal at gmail.com
> To: openwrt-devel at lists.openwrt.org
> Cc: Arınç ÜNAL <arinc.unal at arinc9.com>
> Subject: [PATCH] ramips: add support for Huasifei WS1208V2
> 
> From: Arınç ÜNAL <arinc.unal at arinc9.com>
>
> The Huasifei WS1208V2 is an AC1200 router featuring 5 Ethernet ports with a
> Quectel RM520N-GL cellular modem which supports QMI and MBIM modes.
>
> Specifications:
> - MT7621AT, 256 MiB RAM, 16 MiB SPI Flash
> - MT7603EN 2.4 GHz & MT7612EN 5 GHz WLAN
> - Quectel RM520N-GL Cellular Modem
> - 2 WLAN & 4 Cellular Antennas
> - 5 Gigabit Ethernet Ports
> - 1 USB 2.0 port
> - 1 PCI-E Slot
> - 1 M.2 slot
> - 1 SIM card slot
> - 1 SD card slot
>
> Installation:
> - Install sysupgrade image via ROOter OS.

Thanks a lot! Seems a nice device.
Does it offer any recovery mechanism? In case it does, would you mind adding the procedure description to this commit? Thanks!

Enrico

>
> Link: https://www.huasifei.com/a/Products/5G%20CPE/240.html
> Signed-off-by: Arınç ÜNAL <arinc.unal at arinc9.com>
> ---
> .../ramips/dts/mt7621_huasifei_ws1208v2.dts   | 187 ++++++++++++++++++
> target/linux/ramips/image/mt7621.mk           |  12 ++
> .../mt7621/base-files/etc/board.d/01_leds     |   3 +
> 3 files changed, 202 insertions(+)
> create mode 100644 target/linux/ramips/dts/mt7621_huasifei_ws1208v2.dts
>
> diff --git a/target/linux/ramips/dts/mt7621_huasifei_ws1208v2.dts b/target/linux/ramips/dts/mt7621_huasifei_ws1208v2.dts
> new file mode 100644
> index 0000000000..c69f05a0f4
> --- /dev/null
> +++ b/target/linux/ramips/dts/mt7621_huasifei_ws1208v2.dts
> @@ -0,0 +1,187 @@
> +#include "mt7621.dtsi"
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +	compatible = "huasifei,ws1208v2", "mediatek,mt7621-soc";
> +	model = "Huasifei WS1208V2";
> +
> +	aliases {
> +		led-boot = &led_status;
> +		led-failsafe = &led_status;
> +		led-running = &led_status;
> +		led-upgrade = &led_status;
> +		label-mac-device = &gmac0;
> +	};
> +
> +	chosen {
> +		bootargs = "console=ttyS0,115200";
> +	};
> +
> +	keys {
> +		compatible = "gpio-keys";
> +
> +		button-reset {
> +			label = "Reset";
> +			gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
> +			linux,code = <KEY_RESTART>;
> +		};
> +	};
> +
> +	leds {
> +		compatible = "gpio-leds";
> +
> +		led_status: led-status {
> +			label = "green:status";
> +			gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		led-cellular {
> +			label = "green:cellular";
> +			gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		led-wlan5g {
> +			label = "green:wlan5g";
> +			gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
> +			linux,default-trigger = "phy1tpt";
> +		};
> +
> +		led-wlan2g {
> +			label = "green:wlan2g";
> +			gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
> +			linux,default-trigger = "phy0tpt";
> +		};
> +
> +		led-usb {
> +			label = "green:usb";
> +			gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
> +			trigger-sources = <&xhci_ehci_port1>;
> +			linux,default-trigger = "usbport";
> +		};
> +	};
> +};
> +
> +&sdhci {
> +	status = "okay";
> +};
> +
> +&spi0 {
> +	status = "okay";
> +
> +	flash at 0 {
> +		compatible = "jedec,spi-nor";
> +		reg = <0>;
> +		spi-max-frequency = <10000000>;
> +
> +		partitions {
> +			compatible = "fixed-partitions";
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +
> +			partition at 0 {
> +				label = "u-boot";
> +				reg = <0x0 0x30000>;
> +				read-only;
> +			};
> +
> +			partition at 30000 {
> +				label = "u-boot-env";
> +				reg = <0x30000 0x10000>;
> +				read-only;
> +			};
> +
> +			factory: partition at 40000 {
> +				label = "factory";
> +				reg = <0x40000 0x10000>;
> +				read-only;
> +			};
> +
> +			firmware: partition at 50000 {
> +				compatible = "denx,uimage";
> +				reg = <0x50000 0xfb0000>;
> +				label = "firmware";
> +			};
> +		};
> +	};
> +};
> +
> +&pcie {
> +	status = "okay";
> +};
> +
> +&pcie0 {
> +	wifi at 0,0 {
> +		compatible = "pci14c3,7603";
> +		reg = <0x0000 0 0 0 0>;
> +		mediatek,mtd-eeprom = <&factory 0x0000>;
> +	};
> +};
> +
> +&pcie1 {
> +	wifi at 0,0 {
> +		compatible = "pci14c3,7662";
> +		reg = <0x0000 0 0 0 0>;
> +		mediatek,mtd-eeprom = <&factory 0x8000>;
> +		ieee80211-freq-limit = <5000000 6000000>;
> +
> +		led {
> +			led-sources = <2>;
> +		};
> +	};
> +};
> +
> +&gmac0 {
> +	nvmem-cells = <&macaddr_factory_e000>;
> +	nvmem-cell-names = "mac-address";
> +};
> +
> +&gmac1 {
> +	status = "okay";
> +	label = "wan";
> +	phy-handle = <&ethphy4>;
> +
> +	nvmem-cells = <&macaddr_factory_e000>;
> +	nvmem-cell-names = "mac-address";
> +};
> +
> +&mdio {
> +	ethphy4: ethernet-phy at 4 {
> +		reg = <4>;
> +	};
> +};
> +
> +&switch0 {
> +	ports {
> +		port at 0 {
> +			status = "okay";
> +			label = "lan1";
> +		};
> +
> +		port at 1 {
> +			status = "okay";
> +			label = "lan2";
> +		};
> +
> +		port at 2 {
> +			status = "okay";
> +			label = "lan3";
> +		};
> +
> +		port at 3 {
> +			status = "okay";
> +			label = "lan4";
> +		};
> +	};
> +};
> +
> +&factory {
> +	compatible = "nvmem-cells";
> +	#address-cells = <1>;
> +	#size-cells = <1>;
> +
> +	macaddr_factory_e000: macaddr at e000 {
> +		reg = <0xe000 0x6>;
> +	};
> +};
> diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
> index 2269833e48..bbd25e5be0 100644
> --- a/target/linux/ramips/image/mt7621.mk
> +++ b/target/linux/ramips/image/mt7621.mk
> @@ -996,6 +996,18 @@ define Device/humax_e10
> endef
> TARGET_DEVICES += humax_e10
> 
> +define Device/huasifei_ws1208v2
> +  $(Device/dsa-migration)
> +  $(Device/uimage-lzma-loader)
> +  IMAGE_SIZE := 16064k
> +  DEVICE_VENDOR := Huasifei
> +  DEVICE_MODEL := WS1208V2
> +  DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
> +	kmod-usb3 kmod-usb-net-cdc-mbim kmod-usb-net-qmi-wwan \
> +	kmod-usb-serial-option -wpad-basic-wolfssl
> +endef
> +TARGET_DEVICES += huasifei_ws1208v2
> +
> define Device/iodata_wn-ax1167gr
>   $(Device/dsa-migration)
>   $(Device/uimage-lzma-loader)
> diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
> index 985eefb860..cce0f1ac5d 100644
> --- a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
> +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
> @@ -88,6 +88,9 @@ dlink,dir-882-r1)
> gnubee,gb-pc2)
> 	ucidef_set_led_netdev "ethyellow" "ethyellow" "orange:ethyellow" "ethyellow" "link tx rx"
> 	;;
> +huasifei,ws1208v2)
> +	ucidef_set_led_netdev "wwan0" "wwan0" "green:cellular" "wwan0" "link tx rx"
> +	;;
> keenetic,kn-3010)
> 	ucidef_set_led_netdev "internet" "internet" "green:internet" "wan"
> 	;;
> -- 
> 2.37.2
>
>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list