[openwrt/openwrt] ramips: Add support for Cudy WR1300 v3
LEDE Commits
lede-commits at lists.infradead.org
Mon Mar 11 14:16:46 PDT 2024
hauke pushed a commit to openwrt/openwrt.git, branch openwrt-23.05:
https://git.openwrt.org/1bbb94df9687e7376ca5f50c69f24aa15c704f85
commit 1bbb94df9687e7376ca5f50c69f24aa15c704f85
Author: Filip Milivojevic <zekica at gmail.com>
AuthorDate: Thu Jan 18 19:47:47 2024 +0100
ramips: Add support for Cudy WR1300 v3
Specifications:
- SoC: MediaTek MT7621AT
- RAM: 128 MB (DDR3)
- Flash: 16 MB (SPI NOR)
- WiFi: MediaTek MT7603E, MediaTek MT7613BE
- Switch: 1 WAN, 4 LAN (Gigabit)
- Buttons: Reset, WPS
- LEDs: System, Wan, Lan 1-4, WiFi 2.4G, WiFi 5G, WPS
- Power: DC 12V 1A tip positive
Download and flash the manufacturer's built OpenWRT image available at
http://www.cudytech.com/openwrt_software_download
Install the new OpenWRT image via luci (System -> Backup/Flash firmware)
Be sure to NOT keep settings. The force upgrade may need to be checked
due to differences in router naming conventions.
Cudy WR1300 v3 differs from v2 only in swapped WiFi chip PCIe slots. Common
nodes are extracted to .dtsi and new v2 and v3 dts are created.
Cudy WR1300 v2 dts now contains ieee80211-freq-limit.
The same manufacturer's built OpenWRT image is provided for both v2 and v3
devices as a step in installing, but for proper WiFi functionality,
a separate build is required.
Recovery:
- Loads only signed manufacture firmware due to bootloader RSA verification
- serve tftp-recovery image as /recovery.bin on 192.168.1.88/24
- connect to any lan ethernet port
- power on the device while holding the reset button
- wait at least 8 seconds before releasing reset button for image to
download
- See http://www.cudytech.com/newsinfo/547425.html
Backported from branch main to 23.05.
Signed-off-by: Filip Milivojevic <zekica at gmail.com>
(cherry picked from commit 288738c59de0eeca1a0d2042882445ad54d95fe7)
---
target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts | 173 +--------------------
..._wr1300-v2.dts => mt7621_cudy_wr1300-v2v3.dtsi} | 24 ---
target/linux/ramips/dts/mt7621_cudy_wr1300-v3.dts | 36 +++++
target/linux/ramips/image/mt7621.mk | 12 ++
4 files changed, 51 insertions(+), 194 deletions(-)
diff --git a/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts b/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts
index a5d2fc4607..feeff0e7b0 100644
--- a/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts
+++ b/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts
@@ -1,117 +1,10 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "mt7621.dtsi"
-
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/gpio/gpio.h>
+#include "mt7621_cudy_wr1300-v2v3.dtsi"
/ {
compatible = "cudy,wr1300-v2", "mediatek,mt7621-soc";
model = "Cudy WR1300 v2";
-
- aliases {
- led-boot = &led_sys;
- led-failsafe = &led_sys;
- led-running = &led_sys;
- led-upgrade = &led_sys;
- label-mac-device = &gmac0;
- };
-
- chosen {
- bootargs = "console=ttyS0,115200";
- };
-
- keys {
- compatible = "gpio-keys";
-
- reset {
- label = "reset";
- gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_RESTART>;
- };
-
- wps {
- label = "wps";
- gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_WPS_BUTTON>;
- };
- };
-
- leds {
- compatible = "gpio-leds";
-
- led_sys: sys {
- label = "green:sys";
- gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
- };
-
- wps {
- label = "green:wps";
- gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
- };
- };
-};
-
-&spi0 {
- status = "okay";
-
- flash at 0 {
- compatible = "jedec,spi-nor";
- reg = <0>;
- spi-max-frequency = <40000000>;
-
- 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;
- };
-
- partition at 50000 {
- compatible = "denx,uimage";
- label = "firmware";
- reg = <0x50000 0xf80000>;
- };
-
- partition at fd0000 {
- label = "debug";
- reg = <0xfd0000 0x10000>;
- read-only;
- };
-
- partition at fe0000 {
- label = "backup";
- reg = <0xfe0000 0x10000>;
- read-only;
- };
-
- bdinfo: partition at ff0000 {
- label = "bdinfo";
- reg = <0xff0000 0x10000>;
- read-only;
- };
- };
- };
-};
-
-&pcie {
- status = "okay";
};
&pcie1 {
@@ -121,6 +14,7 @@
mediatek,mtd-eeprom = <&factory 0x0000>;
nvmem-cells = <&macaddr_bdinfo_de00>;
nvmem-cell-names = "mac-address";
+ ieee80211-freq-limit = <2400000 2500000>;
};
};
@@ -132,67 +26,6 @@
nvmem-cells = <&macaddr_bdinfo_de00>;
nvmem-cell-names = "mac-address";
mac-address-increment = <2>;
- };
-};
-
-&gmac0 {
- nvmem-cells = <&macaddr_bdinfo_de00>;
- nvmem-cell-names = "mac-address";
-};
-
-&gmac1 {
- status = "okay";
- label = "wan";
- phy-handle = <ðphy4>;
-
- nvmem-cells = <&macaddr_bdinfo_de00>;
- nvmem-cell-names = "mac-address";
- mac-address-increment = <1>;
-};
-
-&mdio {
- ethphy4: ethernet-phy at 4 {
- reg = <4>;
- };
-};
-
-&switch0 {
- ports {
- port at 0 {
- status = "okay";
- label = "lan4";
- };
-
- port at 1 {
- status = "okay";
- label = "lan3";
- };
-
- port at 2 {
- status = "okay";
- label = "lan2";
- };
-
- port at 3 {
- status = "okay";
- label = "lan1";
- };
- };
-};
-
-&state_default {
- gpio {
- groups = "wdt", "i2c", "jtag";
- function = "gpio";
- };
-};
-
-&bdinfo {
- compatible = "nvmem-cells";
- #address-cells = <1>;
- #size-cells = <1>;
-
- macaddr_bdinfo_de00: macaddr at de00 {
- reg = <0xde00 0x6>;
+ ieee80211-freq-limit = <5000000 6000000>;
};
};
diff --git a/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts b/target/linux/ramips/dts/mt7621_cudy_wr1300-v2v3.dtsi
similarity index 83%
copy from target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts
copy to target/linux/ramips/dts/mt7621_cudy_wr1300-v2v3.dtsi
index a5d2fc4607..9d68ad7f82 100644
--- a/target/linux/ramips/dts/mt7621_cudy_wr1300-v2.dts
+++ b/target/linux/ramips/dts/mt7621_cudy_wr1300-v2v3.dtsi
@@ -6,9 +6,6 @@
#include <dt-bindings/gpio/gpio.h>
/ {
- compatible = "cudy,wr1300-v2", "mediatek,mt7621-soc";
- model = "Cudy WR1300 v2";
-
aliases {
led-boot = &led_sys;
led-failsafe = &led_sys;
@@ -114,27 +111,6 @@
status = "okay";
};
-&pcie1 {
- wifi at 0,0 {
- compatible = "mediatek,mt76";
- reg = <0x0000 0 0 0 0>;
- mediatek,mtd-eeprom = <&factory 0x0000>;
- nvmem-cells = <&macaddr_bdinfo_de00>;
- nvmem-cell-names = "mac-address";
- };
-};
-
-&pcie0 {
- wifi at 0,0 {
- compatible = "mediatek,mt76";
- reg = <0x0000 0 0 0 0>;
- mediatek,mtd-eeprom = <&factory 0x8000>;
- nvmem-cells = <&macaddr_bdinfo_de00>;
- nvmem-cell-names = "mac-address";
- mac-address-increment = <2>;
- };
-};
-
&gmac0 {
nvmem-cells = <&macaddr_bdinfo_de00>;
nvmem-cell-names = "mac-address";
diff --git a/target/linux/ramips/dts/mt7621_cudy_wr1300-v3.dts b/target/linux/ramips/dts/mt7621_cudy_wr1300-v3.dts
new file mode 100644
index 0000000000..062f901c31
--- /dev/null
+++ b/target/linux/ramips/dts/mt7621_cudy_wr1300-v3.dts
@@ -0,0 +1,36 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621_cudy_wr1300-v2v3.dtsi"
+
+/ {
+ compatible = "cudy,wr1300-v3", "mediatek,mt7621-soc";
+ model = "Cudy WR1300 v3";
+};
+
+&pcie0 {
+ wifi at 0,0 {
+ compatible = "mediatek,mt76";
+ reg = <0x0000 0 0 0 0>;
+ mediatek,mtd-eeprom = <&factory 0x0000>;
+ nvmem-cells = <&macaddr_bdinfo_de00>;
+ nvmem-cell-names = "mac-address";
+ ieee80211-freq-limit = <2400000 2500000>;
+
+ led {
+ led-sources = <0>;
+ led-active-low;
+ };
+ };
+};
+
+&pcie1 {
+ wifi at 0,0 {
+ compatible = "mediatek,mt76";
+ reg = <0x0000 0 0 0 0>;
+ mediatek,mtd-eeprom = <&factory 0x8000>;
+ nvmem-cells = <&macaddr_bdinfo_de00>;
+ nvmem-cell-names = "mac-address";
+ mac-address-increment = <2>;
+ ieee80211-freq-limit = <5000000 6000000>;
+ };
+};
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index d25f91a0ed..945fe3668f 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -584,6 +584,18 @@ define Device/cudy_wr1300-v2
endef
TARGET_DEVICES += cudy_wr1300-v2
+define Device/cudy_wr1300-v3
+ $(Device/dsa-migration)
+ IMAGE_SIZE := 15872k
+ DEVICE_VENDOR := Cudy
+ DEVICE_MODEL := WR1300
+ DEVICE_VARIANT := v3
+ DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap \
+ -uboot-envtools
+ SUPPORTED_DEVICES += cudy,wr1300 R30
+endef
+TARGET_DEVICES += cudy_wr1300-v3
+
define Device/cudy_wr2100
$(Device/dsa-migration)
DEVICE_VENDOR := Cudy
More information about the lede-commits
mailing list