aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Freeman <labz56@gmail.com>2020-06-16 09:20:25 +0500
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-08-27 16:36:18 +0200
commitff5dd32164bb430b7a5966a36291f5a8636e7af8 (patch)
tree528dd91105618fe865068578f18540ba5613b727
parent6e936591f0737d4e5735973807aa9f088fc49927 (diff)
downloadupstream-ff5dd32164bb430b7a5966a36291f5a8636e7af8.tar.gz
upstream-ff5dd32164bb430b7a5966a36291f5a8636e7af8.tar.bz2
upstream-ff5dd32164bb430b7a5966a36291f5a8636e7af8.zip
ramips: add support for TP-Link TL-WR850N v2
This patch adds support for the TP-Link TL-WR850N v2. This device is very similar to TP-Link TL-WR840 v4 and TP-Link TL-WR841 v13. Specifications: SOC: MediaTek MT7628NN Flash: 8 MiB SPI RAM: 64 MiB WLAN: MediaTek MT7628NN Ethernet: 5 ports (100M) Installation Using the integrated tftp capability of the router: 1. Turn off the router. 2. Connect pc to one of the router LAN ports. 3. Set your PC IPv4 address to 192.168.0.66/24. 4. Run any TFTP server on the PC. 5. Put the recovery firmware on the root directory of TFTP server and name the file tp_recovery.bin 6. Start the router by pressing power button while holding the WPS/Reset button (or both WPS/Reset and WIFI buttons) 7. Router connects to your PC with IPv4 address 192.168.0.2, downloads the firmware, installs it and reboots. LEDs are flashing. Now you have OpenWrt installed. 8. Change your IPv4 PC address to something in 192.168.1.0/24 network or use DHCP to get an address from your OpenWrt router. 9. Done! You can login to your router via ssh. Forum link: https://forum.openwrt.org/t/add-support-for-tp-link-tl-wr850n-v2/66899 Signed-off-by: Andrew Freeman <labz56@gmail.com> [squash an tidy up commits, sort nodes] Signed-off-by: Darsh Patel <darshkpatel@gmail.com> [minor commit message adjustments] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
-rw-r--r--target/linux/ramips/dts/mt7628an_tplink_tl-wr850n-v2.dts67
-rw-r--r--target/linux/ramips/image/mt76x8.mk13
-rwxr-xr-xtarget/linux/ramips/mt76x8/base-files/etc/board.d/01_leds3
-rwxr-xr-xtarget/linux/ramips/mt76x8/base-files/etc/board.d/02_network4
4 files changed, 85 insertions, 2 deletions
diff --git a/target/linux/ramips/dts/mt7628an_tplink_tl-wr850n-v2.dts b/target/linux/ramips/dts/mt7628an_tplink_tl-wr850n-v2.dts
new file mode 100644
index 0000000000..192b0aaaf0
--- /dev/null
+++ b/target/linux/ramips/dts/mt7628an_tplink_tl-wr850n-v2.dts
@@ -0,0 +1,67 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "mt7628an_tplink_8m.dtsi"
+
+/ {
+ compatible = "tplink,tl-wr850n-v2", "mediatek,mt7628an-soc";
+ model = "TP-Link TL-WR850N v2";
+
+ aliases {
+ led-boot = &led_power;
+ led-failsafe = &led_power;
+ led-running = &led_power;
+ led-upgrade = &led_power;
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_power: power {
+ label = "tl-wr850n-v2:green:power";
+ gpios = <&gpio 36 GPIO_ACTIVE_LOW>;
+ };
+
+ wps {
+ label = "tl-wr850n-v2:green:wps";
+ gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
+ };
+
+ lan {
+ label = "tl-wr850n-v2:green:lan";
+ gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
+ };
+
+ wan {
+ label = "tl-wr850n-v2:green:wan";
+ gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
+ };
+
+ wlan {
+ label = "tl-wr850n-v2:green:wlan";
+ gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy0tpt";
+ };
+ };
+};
+
+&state_default {
+ gpio {
+ groups = "p0led_an", "p2led_an", "perst", "refclk", "wdt", "wled_an";
+ function = "gpio";
+ };
+};
+
+&esw {
+ mediatek,portmap = <0x3e>;
+};
diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk
index 908e2df529..4e30100c63 100644
--- a/target/linux/ramips/image/mt76x8.mk
+++ b/target/linux/ramips/image/mt76x8.mk
@@ -553,6 +553,19 @@ define Device/tplink_tl-wr842n-v5
endef
TARGET_DEVICES += tplink_tl-wr842n-v5
+define Device/tplink_tl-wr850n-v2
+ $(Device/tplink-v2)
+ IMAGE_SIZE := 7808k
+ DEVICE_MODEL := TL-WR850N
+ DEVICE_VARIANT := v2
+ TPLINK_FLASHLAYOUT := 8Mmtk
+ TPLINK_HWID := 0x08500002
+ TPLINK_HWREVADD := 0x2
+ IMAGES := sysupgrade.bin tftp-recovery.bin
+ IMAGE/tftp-recovery.bin := pad-extra 128k | $$(IMAGE/factory.bin)
+endef
+TARGET_DEVICES += tplink_tl-wr850n-v2
+
define Device/tplink_tl-wr902ac-v3
$(Device/tplink-v2)
IMAGE_SIZE := 7808k
diff --git a/target/linux/ramips/mt76x8/base-files/etc/board.d/01_leds b/target/linux/ramips/mt76x8/base-files/etc/board.d/01_leds
index 94c5cb5d49..52be48e1ef 100755
--- a/target/linux/ramips/mt76x8/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/mt76x8/base-files/etc/board.d/01_leds
@@ -94,7 +94,8 @@ tplink,tl-wr841n-v13)
ucidef_set_led_switch "lan4" "lan4" "$boardname:green:lan4" "switch0" "0x10"
ucidef_set_led_switch "wan" "wan" "$boardname:green:wan" "switch0" "0x01"
;;
-tplink,tl-wr841n-v14)
+tplink,tl-wr841n-v14|\
+tplink,tl-wr850n-v2)
ucidef_set_led_switch "lan" "lan" "$boardname:green:lan" "switch0" "0x1e"
ucidef_set_led_switch "wan" "wan" "$boardname:green:wan" "switch0" "0x01"
;;
diff --git a/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network b/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network
index 5a5ba587d5..f1687c7108 100755
--- a/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network
@@ -73,6 +73,7 @@ ramips_setup_interfaces()
tplink,tl-wr841n-v13|\
tplink,tl-wr841n-v14|\
tplink,tl-wr842n-v5|\
+ tplink,tl-wr850n-v2|\
unielec,u7628-01-16m|\
wrtnode,wrtnode2p|\
wrtnode,wrtnode2r|\
@@ -203,7 +204,8 @@ ramips_setup_macs()
tplink,tl-wr840n-v5|\
tplink,tl-wr841n-v13|\
tplink,tl-wr841n-v14|\
- tplink,tl-wr842n-v5)
+ tplink,tl-wr842n-v5|\
+ tplink,tl-wr850n-v2)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xf100)" 1)
;;
tplink,archer-c20-v5|\