ffd1f0b3a5
This patchset enables the RX LNA for the CPE210/510, improving RX by about 20dB. The profiles for CPE210 and CPE510 is split into two images, so the CPE510 can use the correct ART offset, improving the TX power by 10dB. Fixes #796
170 lines
6.9 KiB
Diff
170 lines
6.9 KiB
Diff
From: Matthias Schiffer <mschiffer@universe-factory.net>
|
|
Date: Thu, 9 Jun 2016 04:55:37 +0200
|
|
Subject: ar71xx/cpe510: split profile into 2 profiles cpe210 and cpe510
|
|
|
|
Split profile into 2GHz and 5GHz. The 5GHz devices are
|
|
quite "special". The 2 GHz works perfect.
|
|
|
|
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
|
|
|
|
Backport of LEDE c5ff273d85f69981e5b126eeaed3dee5b4061fb4
|
|
|
|
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/01_gpio-switches b/target/linux/ar71xx/base-files/etc/uci-defaults/01_gpio-switches
|
|
index b41f275..0f7a415 100644
|
|
--- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_gpio-switches
|
|
+++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_gpio-switches
|
|
@@ -15,6 +15,7 @@ nanostation-m)
|
|
nanostation-m-xw)
|
|
ucidef_set_gpio_switch "poe_passthrough" "PoE Passthrough" "2"
|
|
;;
|
|
+cpe210|\
|
|
cpe510)
|
|
ucidef_set_gpio_switch "poe_passthrough" "PoE Passthrough" "20"
|
|
;;
|
|
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
|
|
index ae17853..129f6b7 100644
|
|
--- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
|
|
+++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
|
|
@@ -78,6 +78,7 @@ carambola2)
|
|
ucidef_set_led_wlan "wlan" "WLAN" "carambola2:green:wlan" "phy0tpt"
|
|
;;
|
|
|
|
+cpe210|\
|
|
cpe510)
|
|
ucidef_set_led_switch "lan0" "LAN0" "tp-link:green:lan0" "switch0" "0x20"
|
|
ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10"
|
|
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
|
|
index 4066506..1d0142f 100755
|
|
--- a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
|
|
+++ b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
|
|
@@ -71,6 +71,7 @@ bsb)
|
|
ucidef_set_interface_wlan
|
|
;;
|
|
|
|
+cpe210|\
|
|
cpe510)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
index fbf76c8..4000b5b 100755
|
|
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
@@ -438,7 +438,11 @@ ar71xx_board_detect() {
|
|
*CAP4200AG)
|
|
name="cap4200ag"
|
|
;;
|
|
- *"CPE210/220/510/520")
|
|
+ *"CPE210/220")
|
|
+ name="cpe210"
|
|
+ tplink_pharos_board_detect
|
|
+ ;;
|
|
+ *"CPE510/520")
|
|
name="cpe510"
|
|
tplink_pharos_board_detect
|
|
;;
|
|
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
index 4a4c476..eded91e 100755
|
|
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
@@ -263,6 +263,7 @@ platform_check_image() {
|
|
return 0
|
|
;;
|
|
|
|
+ cpe210|\
|
|
cpe510)
|
|
tplink_pharos_check_image "$1" && return 0
|
|
return 1
|
|
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
|
|
index 5cb052a..74daf43 100644
|
|
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
|
|
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
|
|
@@ -78,12 +78,8 @@ static struct gpio_keys_button cpe510_gpio_keys[] __initdata = {
|
|
}
|
|
};
|
|
|
|
-
|
|
-static void __init cpe510_setup(void)
|
|
+static void __init cpe_setup(u8 *mac)
|
|
{
|
|
- u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
|
|
- u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
|
|
-
|
|
/* Disable JTAG, enabling GPIOs 0-3 */
|
|
/* Configure OBS4 line, for GPIO 4*/
|
|
ath79_gpio_function_setup(AR934X_GPIO_FUNC_JTAG_DISABLE,
|
|
@@ -105,9 +101,31 @@ static void __init cpe510_setup(void)
|
|
ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0);
|
|
ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_GMII;
|
|
ath79_register_eth(1);
|
|
+}
|
|
+
|
|
+
|
|
+static void __init cpe210_setup(void)
|
|
+{
|
|
+ u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
|
|
+ u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
|
|
+
|
|
+ cpe_setup(mac);
|
|
|
|
ath79_register_wmac(ee, mac);
|
|
}
|
|
|
|
-MIPS_MACHINE(ATH79_MACH_CPE510, "CPE510", "TP-LINK CPE210/220/510/520",
|
|
+static void __init cpe510_setup(void)
|
|
+{
|
|
+ u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
|
|
+ u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
|
|
+
|
|
+ cpe_setup(mac);
|
|
+
|
|
+ ath79_register_wmac(ee, mac);
|
|
+}
|
|
+
|
|
+MIPS_MACHINE(ATH79_MACH_CPE210, "CPE210", "TP-LINK CPE210/220",
|
|
+ cpe210_setup);
|
|
+
|
|
+MIPS_MACHINE(ATH79_MACH_CPE510, "CPE510", "TP-LINK CPE510/520",
|
|
cpe510_setup);
|
|
diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile
|
|
index 06dbb77..272abe0 100644
|
|
--- a/target/linux/ar71xx/image/Makefile
|
|
+++ b/target/linux/ar71xx/image/Makefile
|
|
@@ -2094,7 +2094,8 @@ $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1043V2,tl-wr1043nd-v2,TL-WR10
|
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1043V3,tl-wr1043nd-v3,TL-WR1043ND-v2,ttyS0,115200,0x10430003,1,8M))
|
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR2543,tl-wr2543-v1,TL-WR2543N,ttyS0,115200,0x25430001,1,8Mlzma,-v 3.13.99))
|
|
|
|
-$(eval $(call SingleProfile,TPLINK-SAFELOADER,64kraw,CPE510,cpe210-220-510-520,CPE510,ttyS0,115200,$$(cpe510_mtdlayout),CPE510))
|
|
+$(eval $(call SingleProfile,TPLINK-SAFELOADER,64kraw,CPE210_220,cpe210-220,CPE210,ttyS0,115200,$$(cpe510_mtdlayout),CPE510))
|
|
+$(eval $(call SingleProfile,TPLINK-SAFELOADER,64kraw,CPE510_520,cpe510-520,CPE510,ttyS0,115200,$$(cpe510_mtdlayout),CPE510))
|
|
|
|
$(eval $(call SingleProfile,UAPPRO,64k,UAPPRO,ubnt-uap-pro,UAP-PRO,ttyS0,115200,BZ,BZ,ar934x))
|
|
$(eval $(call SingleProfile,UAPPRO,64k,UBNTUNIFIOUTDOORPLUS,ubnt-unifi-outdoor-plus,UBNT-UOP,ttyS0,115200,BZ,BZ,ar7240))
|
|
@@ -2158,6 +2159,7 @@ $(eval $(call MultiProfile,TLWR842,TLWR842V1))
|
|
$(eval $(call MultiProfile,TLWR941,TLWR941NV2 TLWR941NV3 TLWR941NV4))
|
|
$(eval $(call MultiProfile,TLWR1043,TLWR1043V1 TLWR1043V2 TLWR1043V3))
|
|
$(eval $(call MultiProfile,TLWDR4300,TLWDR3500V1 TLWDR3600V1 TLWDR4300V1 TLWDR4300V1IL TLWDR4310V1 MW4530RV1))
|
|
+$(eval $(call MultiProfile,CPE510,CPE210_220 CPE510_520))
|
|
$(eval $(call MultiProfile,TUBE2H,TUBE2H8M TUBE2H16M))
|
|
$(eval $(call MultiProfile,UBNT,UBNTAIRROUTER UBNTRS UBNTRSPRO UBNTLSSR71 UBNTBULLETM UBNTROCKETM UBNTROCKETMXW UBNTNANOM UBNTNANOMXW UBNTLOCOXW UBNTUNIFI UBNTUNIFIOUTDOOR UBNTUNIFIOUTDOORPLUS UAPPRO UBNTAIRGW))
|
|
$(eval $(call MultiProfile,WNR612V2,REALWNR612V2 N150R))
|
|
diff --git a/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch
|
|
index dbd3fca..b2f5366 100644
|
|
--- a/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch
|
|
+++ b/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch
|
|
@@ -1,6 +1,6 @@
|
|
--- a/arch/mips/ath79/machtypes.h
|
|
+++ b/arch/mips/ath79/machtypes.h
|
|
-@@ -16,22 +16,201 @@
|
|
+@@ -16,22 +16,202 @@
|
|
|
|
enum ath79_mach_type {
|
|
ATH79_MACH_GENERIC = 0,
|
|
@@ -26,6 +26,7 @@
|
|
+ ATH79_MACH_BHU_BXU2000N2_A1, /* BHU BXU2000n-2 A1 */
|
|
+ ATH79_MACH_CAP4200AG, /* Senao CAP4200AG */
|
|
+ ATH79_MACH_CARAMBOLA2, /* 8devices Carambola2 */
|
|
++ ATH79_MACH_CPE210, /* TP-LINK CPE210 */
|
|
+ ATH79_MACH_CPE510, /* TP-LINK CPE510 */
|
|
ATH79_MACH_DB120, /* Atheros DB120 reference board */
|
|
ATH79_MACH_PB44, /* Atheros PB44 reference board */
|