ramips: Add support for ZBT WE826-E

ZBT WE826-E is a dual-SIM version of the ZBT WE826. The router has the
following specifications:

- MT7620A (580 MHz)
- 128MB RAM
- 32MB of flash (SPI NOR)
- 5x 10/100Mbps Ethernet (MT7620A built-in switch)
- 1x microSD slot
- 1x miniPCIe slot (only USB2.0 bus)
- 2x SIM card slots (standard size)
- 1x USB2.0 port
- 1x 2.4GHz wifi (rt2800)
- 10x LEDs (4 GPIO-controlled)
- 1x reset button

The following have been tested and working:
- Ethernet switch
- wifi
- miniPCIe slot
- USB port
- microSD slot
- sysupgrade
- reset button

Installation and recovery:

In order to install OpenWRT the first time or recover the router, you
can use the web-based recovery system. Keep the reset button pressed
during boot and access 192.168.1.1 in your browser when your machine
obtains an IP address.  Upload the firmware to start the recovery
process.

How to swap SIMs:

You control which SIM slot to use by writing 0/1 to
/sys/class/gpio/gpio13/value. In order for the change to take effect,
you can either use AT-commands (AT+CFUN) or power-cycle the modem (write
0/1 to /sys/class/gpio/gpio14/value).

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
master
Kristian Evensen 6 years ago committed by Petr Štetiar
parent 52b59a984f
commit 869376710d
  1. 3
      target/linux/ramips/base-files/etc/board.d/01_leds
  2. 1
      target/linux/ramips/base-files/etc/board.d/02_network
  3. 4
      target/linux/ramips/base-files/etc/board.d/03_gpio_switches
  4. 84
      target/linux/ramips/dts/ZBT-WE826-E.dts
  5. 9
      target/linux/ramips/image/mt7620.mk

@ -252,7 +252,8 @@ mr200)
mtc,wr1201)
ucidef_set_led_switch "eth_link" "LAN link" "$boardname:green:eth_link" "switch0" "0x0f"
;;
mzk-ex750np)
mzk-ex750np|\
zbtlink,zbt-we826-e)
set_wifi_led "$boardname:red:wifi"
;;
netgear,r6120)

@ -133,6 +133,7 @@ ramips_setup_interfaces()
youku,yk-l2|\
zbt-ape522ii|\
zbt-we1326|\
zbtlink,zbt-we826-e|\
zbtlink,zbt-we3526|\
zbt-we826-16M|\
zbt-we826-32M|\

@ -32,6 +32,10 @@ ubnt-erx-sfp)
ucidef_add_gpio_switch "poe_power_port3" "PoE Power Port3" "499"
ucidef_add_gpio_switch "poe_power_port4" "PoE Power Port4" "500"
;;
zbtlink,zbt-we826-e)
ucidef_add_gpio_switch "sim_switch" "SIM slot switch" "13"
ucidef_add_gpio_switch "power_mpcie" "mPCIe power" "14" "1"
;;
esac
board_config_flush

@ -0,0 +1,84 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/dts-v1/;
#include "ZBT-WE826.dtsi"
/ {
compatible = "zbtlink,zbt-we826-e", "zbtlink,zbt-we826", "ralink,mt7620a-soc";
model = "ZBT-WE826-E";
/delete-node/ leds;
leds {
compatible = "gpio-leds";
led_power: gsm {
label = "zbt-we826-e:blue:gsm";
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
};
signal {
label = "zbt-we826-e:green:signal";
gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
};
sim {
label = "zbt-we826-e:red:sim";
gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
};
air {
label = "zbt-we826-e:red:wifi";
gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
};
};
};
&spi0 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <10000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x0 0x30000>;
read-only;
};
partition@30000 {
label = "u-boot-env";
reg = <0x30000 0x10000>;
read-only;
};
factory: partition@40000 {
label = "factory";
reg = <0x40000 0x10000>;
read-only;
};
firmware: partition@50000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x50000 0x1fb0000>;
};
};
};
};
&pinctrl {
state_default: pinctrl0 {
default {
ralink,group = "i2c", "uartf", "wled";
ralink,function = "gpio";
};
};
};

@ -818,6 +818,15 @@ define Device/zbt-we826-32M
endef
TARGET_DEVICES += zbt-we826-32M
define Device/zbtlink_zbt-we826-e
DTS := ZBT-WE826-E
IMAGE_SIZE := 32448k
DEVICE_TITLE := Zbtlink ZBT-WE826-E
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 uqmi \
kmod-usb-serial kmod-usb-serial-option
endef
TARGET_DEVICES += zbtlink_zbt-we826-e
define Device/zbt-wr8305rt
DTS := ZBT-WR8305RT
DEVICE_TITLE := Zbtlink ZBT-WR8305RT

Loading…
Cancel
Save