ar71xx: Add Support for the TP-LINK CPE510 V3.0 Device

Installation:
 Flash factory image through stock firmware WEB UI
 or through TFTP
 To get to TFTP recovery just hold reset button while powering on for
 around 4-5 seconds and release.
 Rename factory image to recovery.bin
 Stock TFTP server IP:192.168.0.100
 Stock device TFTP adress:192.168.0.254
This commit is contained in:
apcameron 2018-12-10 09:25:52 -06:00 committed by Joe AE6XE
parent 7486a179c7
commit 230eddf8bb
7 changed files with 131 additions and 1 deletions

View File

@ -91,6 +91,7 @@ TPLink CPE210 v3.0 | cpe210-v3 | 64Mb | stable
TPLink CPE220 v3.0 | cpe220-v3 | 64Mb | stable
TPLink CPE510 v1.0/v1.1 | cpe510-520-v1 | 64Mb | stable
TPLink CPE510 v2.0 | cpe510-v2 | 64Mb | stable
TPLink CPE510 v3.0 | cpe510-v3 | 64Mb | stable
TPLink CPE610 v1.0 | cpe610-v1 | 64Mb | stable
Mikrotik Basebox RB912UAG-5HPnD/2HPnD | mikrotik-nand-large | 64Mb | stable
Mikrotik hAP ac lite 952Ui-5ac2nD | mikrotik-rb-nor-flash-16M-ac | 64Mb | stable

View File

@ -7,6 +7,7 @@ CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe220-v3=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe210-220-v1=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe510-520-v1=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe510-v2=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe510-v3=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_cpe610-v1=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_ubnt-airrouter=y
CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_ubnt-bullet-m=y

View File

@ -140,6 +140,8 @@ if($hardwaretype eq "nanostation-m")
$hardwaretypev= "220-v3" ; # v3.0
} elsif($hwmodel =~ /CPE510 v2\.0/i) {
$hardwaretypev= "510-v2" ; # v2.0
} elsif($hwmodel =~ /CPE510 v3\.0/i) {
$hardwaretypev= "510-v3" ; # v3.0
} elsif($hwmodel =~ /CPE510/i) {
$hardwaretypev= "510-520-v1" ; # CPE510 V1.0/v1.1
} elsif($hwmodel =~ /CPE610/i) {

View File

@ -1062,6 +1062,16 @@ sub hardware_info
'rfband' => '5800ubntus',
'chanpower' => { 140 => '17', 184 => '26' },
},
'TP-Link CPE510 v3.0' => {
'name' => 'TP-Link CPE510 v3.0',
'comment' => '',
'supported' => '1',
'maxpower' => '26',
'pwroffset' => '0',
'usechains' => 1,
'rfband' => '5800ubntus',
'chanpower' => { 140 => '17', 184 => '26' },
},
'TP-Link CPE610 v1.0' => {
'name' => 'TP-Link CPE610 v1.0',
'comment' => '',

View File

@ -0,0 +1,114 @@
--- a/target/linux/ar71xx/base-files/etc/board.d/01_leds
+++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds
@@ -240,6 +240,7 @@ cpe210-v2|\
cpe210-v3|\
cpe220-v3|\
cpe510-v2|\
+cpe510-v3|\
cpe510|\
wbs210|\
wbs510)
@@ -252,7 +253,8 @@ wbs510)
case "$board" in
cpe210-v2|\
cpe210-v3|\
- cpe510-v2)
+ cpe510-v2|\
+ cpe510-v3)
ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan0" "eth0"
;;
*)
--- a/target/linux/ar71xx/base-files/etc/board.d/02_network
+++ b/target/linux/ar71xx/base-files/etc/board.d/02_network
@@ -80,6 +80,7 @@ ar71xx_setup_interfaces()
cpe210-v2|\
cpe210-v3|\
cpe510-v2|\
+ cpe510-v3|\
dr342|\
eap120|\
eap300v2|\
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
@@ -596,6 +596,10 @@ ar71xx_board_detect() {
name="cpe510-v2"
tplink_pharos_board_detect "$(tplink_pharos_v2_get_model_string)"
;;
+ *"CPE510 v3")
+ name="cpe510-v3"
+ tplink_pharos_board_detect "$(tplink_pharos_v2_get_model_string)"
+ ;;
*"CPE610")
name="cpe610"
tplink_pharos_board_detect "$(tplink_pharos_v2_get_model_string)"
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -594,7 +594,8 @@ platform_check_image() {
return 1
;;
cpe610|\
- cpe510-v2)
+ cpe510-v2|\
+ cpe510-v3)
tplink_pharos_check_image "$1" "7f454c46" "$(tplink_pharos_v2_get_model_string)" '\0\xff\r' && return 0
return 1
;;
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
@@ -342,6 +342,9 @@ MIPS_MACHINE(ATH79_MACH_CPE220_V3, "CPE2
MIPS_MACHINE(ATH79_MACH_CPE510_V2, "CPE510V2", "TP-LINK CPE510 v2",
cpe510_v2_setup);
+MIPS_MACHINE(ATH79_MACH_CPE510_V3, "CPE510V3", "TP-LINK CPE510 v3",
+ cpe510_v2_setup);
+
MIPS_MACHINE(ATH79_MACH_CPE510, "CPE510", "TP-LINK CPE510/520",
cpe510_setup);
--- a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
+++ b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
@@ -78,6 +78,7 @@ enum ath79_mach_type {
ATH79_MACH_CPE210_V3, /* TP-LINK CPE210 v3 */
ATH79_MACH_CPE220_V3, /* TP-LINK CPE220 v3 */
ATH79_MACH_CPE510_V2, /* TP-LINK CPE510 v2 */
+ ATH79_MACH_CPE510_V3, /* TP-LINK CPE510 v3 */
ATH79_MACH_CPE505N, /* P&W CPE505N */
ATH79_MACH_CPE510, /* TP-LINK CPE510 */
ATH79_MACH_CPE610, /* TP-LINK CPE610 */
--- a/target/linux/ar71xx/image/generic-tp-link.mk
+++ b/target/linux/ar71xx/image/generic-tp-link.mk
@@ -182,6 +182,13 @@ define Device/cpe510-v2
endef
TARGET_DEVICES += cpe510-v2
+define Device/cpe510-v3
+ $(Device/cpe510-520-v1)
+ DEVICE_TITLE := TP-LINK CPE510 v3
+ BOARDNAME := CPE510V3
+endef
+TARGET_DEVICES += cpe510-v3
+
define Device/cpe210-220-v1
$(Device/cpe510-520-v1)
DEVICE_TITLE := TP-LINK CPE210/220 v1
--- a/tools/firmware-utils/src/tplink-safeloader.c
+++ b/tools/firmware-utils/src/tplink-safeloader.c
@@ -235,7 +235,17 @@ static struct device_info boards[] = {
"CPE510(TP-LINK|US|N300-5|55530000):2.0\r\n"
"CPE510(TP-LINK|UN|N300-5):2.0\r\n"
"CPE510(TP-LINK|EU|N300-5):2.0\r\n"
- "CPE510(TP-LINK|US|N300-5):2.0\r\n",
+ "CPE510(TP-LINK|US|N300-5):2.0\r\n"
+ "CPE510(TP-LINK|EU|N300-5|00000000):3.0\r\n"
+ "CPE510(TP-LINK|EU|N300-5|45550000):3.0\r\n"
+ "CPE510(TP-LINK|EU|N300-5|55530000):3.0\r\n"
+ "CPE510(TP-LINK|UN|N300-5|00000000):3.0\r\n"
+ "CPE510(TP-LINK|UN|N300-5|45550000):3.0\r\n"
+ "CPE510(TP-LINK|UN|N300-5|55530000):3.0\r\n"
+ "CPE510(TP-LINK|US|N300-5|55530000):3.0\r\n"
+ "CPE510(TP-LINK|UN|N300-5):3.0\r\n"
+ "CPE510(TP-LINK|EU|N300-5):3.0\r\n"
+ "CPE510(TP-LINK|US|N300-5):3.0\r\n",
.support_trail = '\xff',
.soft_ver = NULL,

View File

@ -1,6 +1,6 @@
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -162,9 +162,17 @@ get_status_led() {
@@ -162,9 +162,18 @@ get_status_led() {
cf-e385ac)
status_led="$board:blue:wlan2g"
;;
@ -8,6 +8,7 @@
+ cpe210-v3|\
+ cpe220-v3|\
+ cpe510-v2|\
+ cpe510-v3|\
+ cpe210|\
cpe510)
status_led="tp-link:green:link4"

View File

@ -2,6 +2,7 @@
001-add_support_for_TP-Link_CPE510_v2.patch
001-add_support_for_TP-Link_CPE610_v1.patch
001-add_support_for_TP-Link_CPE220_v3.patch
001-add_support_for_TP-Link_CPE510_v3.patch
002-firmware-check-fix.patch
003-add-winbond-w25q128jv.patch
004-add-lhg-5hpnd-xl.patch