Skip to content

Commit

Permalink
ramips: add support for cudy WR2100
Browse files Browse the repository at this point in the history
Specifications

  SoC:       MT7621
  CPU:       880 MHz
  Flash:     16 MiB
  RAM:       128 MiB
  WLAN:      2.4 GHz b/g/n, 5 GHz a/n/ac
             MT7603E / MT7615E
  Ethernet:  5x Gbit ports

Installation

There are two known options:
1) The Luci-based UI.
2) Press and hold the reset button during power up.
   The router will request 'recovery.bin' from a TFTP server at
   192.168.1.88.

Both options require a signed firmware binary.
The openwrt image supplied by cudy is signed and can be used to
install unsigned images.

R4 & R5 need to be shorted (0-100Ω) for the UART to work.

Signed-off-by: Leon M. George <leon@georgemail.eu>
[remove non-required switch-port node - remove trgmii phy-mode]
Signed-off-by: David Bauer <mail@david-bauer.net>
  • Loading branch information
yogo1212 authored and blocktrron committed May 26, 2021
1 parent a46ad59 commit 3501db9
Show file tree
Hide file tree
Showing 3 changed files with 218 additions and 0 deletions.
201 changes: 201 additions & 0 deletions target/linux/ramips/dts/mt7621_cudy_wr2100.dts
@@ -0,0 +1,201 @@
// 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 = "cudy,wr2100", "mediatek,mt7621-soc";
model = "Cudy WR2100";

aliases {
led-boot = &led_internet_blue;
led-failsafe = &led_internet_blue;
led-running = &led_internet_blue;
led-upgrade = &led_internet_blue;
label-mac-device = &gmac0;
};

chosen {
bootargs = "console=ttyS0,115200";
};

keys {
compatible = "gpio-keys";

reset {
label = "reset";
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};

wps {
label = "wps";
gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WPS_BUTTON>;
};
};

leds {
compatible = "gpio-leds";

led_internet_blue: internet_blue {
label = "blue:internet";
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
};

internet_red {
label = "red:internet";
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
};

wan {
label = "green:wan";
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
};

lan1 {
label = "green:lan1";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
};

lan2 {
label = "green:lan2";
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
};

lan3 {
label = "green:lan3";
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
};

lan4 {
label = "green:lan4";
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
};
};
};

&gmac0 {
mtd-mac-address = <&bdinfo 0xde00>;
};

&pcie {
status = "okay";
};

&pcie0 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
mediatek,mtd-eeprom = <&factory 0x0000>;
ieee80211-freq-limit = <2400000 2500000>;
};
};

&pcie1 {
wifi@1,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
mediatek,mtd-eeprom = <&factory 0x8000>;
ieee80211-freq-limit = <5000000 6000000>;
};
};

&spi0 {
status = "okay";

flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <50000000>;

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;
};

partition@50000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x50000 0xf80000>;
};

partition@fd0000 {
label = "debug";
reg = <0xfd0000 0x10000>;
read-only;
};

partition@fe0000 {
label = "backup";
reg = <0xfe0000 0x10000>;
read-only;
};

bdinfo: partition@ff0000 {
label = "bdinfo";
reg = <0xff0000 0x10000>;
read-only;
};
};
};
};

&state_default {
gpio {
groups = "i2c", "jtag", "uart2", "uart3", "wdt";
function = "gpio";
};
};

&switch0 {
ports {
port@0 {
status = "okay";
label = "lan1";
};

port@1 {
status = "okay";
label = "lan2";
};

port@2 {
status = "okay";
label = "lan3";
};

port@3 {
status = "okay";
label = "lan4";
};

port@4 {
status = "okay";
label = "wan";

mtd-mac-address = <&bdinfo 0xde00>;
mtd-mac-address-increment = <1>;
};
};
};
10 changes: 10 additions & 0 deletions target/linux/ramips/image/mt7621.mk
Expand Up @@ -240,6 +240,16 @@ define Device/cudy_wr1300
endef
TARGET_DEVICES += cudy_wr1300

define Device/cudy_wr2100
$(Device/dsa-migration)
DEVICE_VENDOR := Cudy
DEVICE_MODEL := WR2100
IMAGE_SIZE := 15872k
UIMAGE_NAME := R11
DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
endef
TARGET_DEVICES += cudy_wr2100

define Device/dlink_dir-8xx-a1
$(Device/dsa-migration)
IMAGE_SIZE := 16000k
Expand Down
7 changes: 7 additions & 0 deletions target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
Expand Up @@ -11,6 +11,13 @@ asus,rt-n56u-b1)
ucidef_set_led_netdev "lan" "LAN link" "blue:lan" "br-lan"
ucidef_set_led_netdev "wan" "WAN link" "blue:wan" "wan"
;;
cudy,wr2100)
ucidef_set_led_netdev "lan1" "lan1" "green:lan1" "lan1"
ucidef_set_led_netdev "lan2" "lan2" "green:lan2" "lan2"
ucidef_set_led_netdev "lan3" "lan3" "green:lan3" "lan3"
ucidef_set_led_netdev "lan4" "lan4" "green:lan4" "lan4"
ucidef_set_led_netdev "wan" "wan" "green:wan" "wan"
;;
d-team,newifi-d2)
ucidef_set_led_netdev "internet" "internet" "amber:internet" "wan"
ucidef_set_led_netdev "wlan2g" "WiFi 2.4GHz" "blue:wlan2g" "wlan0"
Expand Down

0 comments on commit 3501db9

Please sign in to comment.