|
|
|
@ -0,0 +1,435 @@
|
|
|
|
|
|
|
|
|
|
commit 251906597f5aa3d06b96ae7368d11a4959e64c96
|
|
|
|
|
Author: Robert Marko <robimarko@gmail.com>
|
|
|
|
|
Date: Fri Jan 19 12:58:40 2018 +0100
|
|
|
|
|
|
|
|
|
|
ar71xx: Add TP-Link Pharos v2 board detection
|
|
|
|
|
|
|
|
|
|
Add support for detecting TP-Link Pharos v2 boards.
|
|
|
|
|
They use different format in product-info partition than v1 boards.
|
|
|
|
|
|
|
|
|
|
Code for this patch was written by Alexander Couzens <lynxis@fe80.eu>
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
|
|
|
|
|
|
|
|
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
|
|
|
index b6642495de..c40c83f5dd 100755
|
|
|
|
|
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
|
|
|
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
|
|
|
|
|
@@ -361,6 +361,25 @@ tplink_pharos_board_detect() {
|
|
|
|
|
AR71XX_MODEL="TP-Link $model v$2"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
+tplink_pharos_v2_get_model_string() {
|
|
|
|
|
+ local part
|
|
|
|
|
+ part=$(find_mtd_part 'product-info')
|
|
|
|
|
+ [ -z "$part" ] && return 1
|
|
|
|
|
+
|
|
|
|
|
+ # The returned string will end with \r\n, but we don't remove it here
|
|
|
|
|
+ # to simplify matching against it in the sysupgrade image check
|
|
|
|
|
+ dd if=$part bs=1 skip=4360 count=64 2>/dev/null | tr -d '\r\0' | head -n 1
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+tplink_pharos_v2_board_detect() {
|
|
|
|
|
+ local model_string="$(tplink_pharos_v2_get_model_string)"
|
|
|
|
|
+ local oIFS="$IFS"; IFS=":"; set -- $model_string; IFS="$oIFS"
|
|
|
|
|
+
|
|
|
|
|
+ local model="${1%%\(*}"
|
|
|
|
|
+
|
|
|
|
|
+ AR71XX_MODEL="TP-Link $model v$2"
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
ar71xx_board_detect() {
|
|
|
|
|
local machine
|
|
|
|
|
local name
|
|
|
|
|
@@ -532,6 +551,10 @@ ar71xx_board_detect() {
|
|
|
|
|
name="cpe210"
|
|
|
|
|
tplink_pharos_board_detect
|
|
|
|
|
;;
|
|
|
|
|
+ *"CPE210 v2")
|
|
|
|
|
+ name="cpe210-v2"
|
|
|
|
|
+ tplink_pharos_v2_board_detect
|
|
|
|
|
+ ;;
|
|
|
|
|
*"CPE505N")
|
|
|
|
|
name="cpe505n"
|
|
|
|
|
;;
|
|
|
|
|
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
|
|
|
index 3d7b1593e1..1ed6882741 100755
|
|
|
|
|
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
|
|
|
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
|
|
|
|
|
@@ -120,6 +120,34 @@ tplink_pharos_check_image() {
|
|
|
|
|
return 0
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
+tplink_pharos_v2_check_image() {
|
|
|
|
|
+ local image_magic="$(get_magic_long "$1")"
|
|
|
|
|
+ local board_magic="$2"
|
|
|
|
|
+ [ "$image_magic" != "$board_magic" ] && {
|
|
|
|
|
+ echo "Invalid image magic '$image_magic'. Expected '$board_magic'."
|
|
|
|
|
+ return 1
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ local model_string="$(tplink_pharos_v2_get_model_string)"
|
|
|
|
|
+ local line
|
|
|
|
|
+
|
|
|
|
|
+ # Here $1 is given to dd directly instead of get_image as otherwise the skip
|
|
|
|
|
+ # will take almost a second (as dd can't seek then)
|
|
|
|
|
+ #
|
|
|
|
|
+ # This will fail if the image isn't local, but that's fine: as the
|
|
|
|
|
+ # read loop won't be executed at all, it will return true, so the image
|
|
|
|
|
+ # is accepted (loading the first 1.5M of a remote image for this check seems
|
|
|
|
|
+ # a bit extreme)
|
|
|
|
|
+ dd if="$1" bs=1 skip=1511432 count=1024 2>/dev/null | tr -d '\0\xff\r' | while read line; do
|
|
|
|
|
+ [ "$line" = "$model_string" ] && break
|
|
|
|
|
+ done || {
|
|
|
|
|
+ echo "Unsupported image (model not in support-list)"
|
|
|
|
|
+ return 1
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return 0
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
seama_get_type_magic() {
|
|
|
|
|
get_image "$@" | dd bs=1 count=4 skip=53 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"'
|
|
|
|
|
}
|
|
|
|
|
@@ -550,6 +578,10 @@ platform_check_image() {
|
|
|
|
|
tplink_pharos_check_image "$1" && return 0
|
|
|
|
|
return 1
|
|
|
|
|
;;
|
|
|
|
|
+ cpe210-v2)
|
|
|
|
|
+ tplink_pharos_v2_check_image "$1" "01000000" && return 0
|
|
|
|
|
+ return 1
|
|
|
|
|
+ ;;
|
|
|
|
|
a40|\
|
|
|
|
|
a60|\
|
|
|
|
|
mr1750|\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
commit 7b711ff801d4c0f4740056481b156f96b5a0fbc8
|
|
|
|
|
Author: Robert Marko <robimarko@gmail.com>
|
|
|
|
|
Date: Fri Jan 19 14:45:42 2018 +0100
|
|
|
|
|
|
|
|
|
|
ar71xx: add support for TP-Link CPE210 v2
|
|
|
|
|
|
|
|
|
|
This PR adds support for a popular low-cost 2.4GHz N based AP
|
|
|
|
|
|
|
|
|
|
Specifications:
|
|
|
|
|
- SoC: Qualcomm Atheros QCA9533 (650MHz)
|
|
|
|
|
- RAM: 64MB
|
|
|
|
|
- Storage: 8 MB SPI NOR
|
|
|
|
|
- Wireless: 2.4GHz N based built into SoC 2x2
|
|
|
|
|
- Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
Notes:
|
|
|
|
|
TP-Link does not use bootstrap registers so without this patch reference
|
|
|
|
|
clock detects as 40MHz while it is actually 25MHz.
|
|
|
|
|
This is due to messed up bootstrap resistor configuration on the PCB.
|
|
|
|
|
Provided GPL code just forces 25MHz reference clock.
|
|
|
|
|
That causes booting with completely wrong clocks, for example, CPU tries
|
|
|
|
|
to boot at 1040MHz while the stock is 650MHz.
|
|
|
|
|
So this PR depends on PR #672 to remove 40MHz reference clock.
|
|
|
|
|
Thanks to Sven Eckelmann <sven@narfation.org> for properly patching that.
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
|
|
|
|
|
|
|
|
diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds
|
|
|
|
|
index fb1f29dcfa..5ea9c3ee73 100755
|
|
|
|
|
--- a/target/linux/ar71xx/base-files/etc/board.d/01_leds
|
|
|
|
|
+++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds
|
|
|
|
|
@@ -213,16 +213,25 @@ cf-e530n)
|
|
|
|
|
ucidef_set_led_netdev "wan" "WAN" "$board:blue:wan" "eth1"
|
|
|
|
|
;;
|
|
|
|
|
cpe210|\
|
|
|
|
|
+cpe210-v2|\
|
|
|
|
|
cpe510|\
|
|
|
|
|
wbs210|\
|
|
|
|
|
wbs510)
|
|
|
|
|
- ucidef_set_led_switch "lan0" "LAN0" "tp-link:green:lan0" "switch0" "0x20"
|
|
|
|
|
- ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10"
|
|
|
|
|
ucidef_set_rssimon "wlan0" "200000" "1"
|
|
|
|
|
ucidef_set_led_rssi "rssilow" "RSSILOW" "tp-link:green:link1" "wlan0" "1" "100" "0" "13"
|
|
|
|
|
ucidef_set_led_rssi "rssimediumlow" "RSSIMEDIUMLOW" "tp-link:green:link2" "wlan0" "26" "100" "-25" "13"
|
|
|
|
|
ucidef_set_led_rssi "rssimediumhigh" "RSSIMEDIUMHIGH" "tp-link:green:link3" "wlan0" "51" "100" "-50" "13"
|
|
|
|
|
ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "tp-link:green:link4" "wlan0" "76" "100" "-75" "13"
|
|
|
|
|
+
|
|
|
|
|
+ case "$board" in
|
|
|
|
|
+ cpe210-v2)
|
|
|
|
|
+ ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan0" "eth0"
|
|
|
|
|
+ ;;
|
|
|
|
|
+ *)
|
|
|
|
|
+ ucidef_set_led_switch "lan0" "LAN0" "tp-link:green:lan0" "switch0" "0x20"
|
|
|
|
|
+ ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10"
|
|
|
|
|
+ ;;
|
|
|
|
|
+ esac
|
|
|
|
|
;;
|
|
|
|
|
cr3000)
|
|
|
|
|
ucidef_set_led_netdev "wan" "WAN" "pcs:blue:wan" "eth1"
|
|
|
|
|
diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network
|
|
|
|
|
index 5a10a9f486..bab99bb852 100755
|
|
|
|
|
--- a/target/linux/ar71xx/base-files/etc/board.d/02_network
|
|
|
|
|
+++ b/target/linux/ar71xx/base-files/etc/board.d/02_network
|
|
|
|
|
@@ -71,6 +71,7 @@ ar71xx_setup_interfaces()
|
|
|
|
|
cap4200ag|\
|
|
|
|
|
cf-e380ac-v1|\
|
|
|
|
|
cf-e380ac-v2|\
|
|
|
|
|
+ cpe210-v2|\
|
|
|
|
|
dr342|\
|
|
|
|
|
eap120|\
|
|
|
|
|
eap300v2|\
|
|
|
|
|
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
|
|
|
|
|
index 3ca77550bc..ed19fa8ba4 100644
|
|
|
|
|
--- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
|
|
|
|
|
+++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
|
|
|
|
|
@@ -1467,6 +1467,7 @@ config ATH79_MACH_CPE505N
|
|
|
|
|
config ATH79_MACH_CPE510
|
|
|
|
|
bool "TP-LINK CPE510 support"
|
|
|
|
|
select SOC_AR934X
|
|
|
|
|
+ select SOC_QCA953X
|
|
|
|
|
select ATH79_DEV_ETH
|
|
|
|
|
select ATH79_DEV_GPIO_BUTTONS
|
|
|
|
|
select ATH79_DEV_LEDS_GPIO
|
|
|
|
|
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 d2dbed1fe2..64805938c4 100644
|
|
|
|
|
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
|
|
|
|
|
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
|
|
|
|
|
@@ -1,7 +1,8 @@
|
|
|
|
|
/*
|
|
|
|
|
- * TP-LINK CPE210/220/510/520 board support
|
|
|
|
|
+ * TP-LINK CPE210/210 v2/220/510/520 board support
|
|
|
|
|
*
|
|
|
|
|
* Copyright (C) 2014 Matthias Schiffer <mschiffer@universe-factory.net>
|
|
|
|
|
+ * Copyright (C) 2017 Robert Marko <robimarko@gmail.com>
|
|
|
|
|
*
|
|
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
|
* under the terms of the GNU General Public License version 2 as published
|
|
|
|
|
@@ -41,6 +42,8 @@
|
|
|
|
|
#define CPE510_KEYS_POLL_INTERVAL 20 /* msecs */
|
|
|
|
|
#define CPE510_KEYS_DEBOUNCE_INTERVAL (3 * CPE510_KEYS_POLL_INTERVAL)
|
|
|
|
|
|
|
|
|
|
+/* CPE210 v2 reset GPIO */
|
|
|
|
|
+#define CPE210_V2_GPIO_BTN_RESET 17
|
|
|
|
|
|
|
|
|
|
static struct gpio_led cpe510_leds_gpio[] __initdata = {
|
|
|
|
|
{
|
|
|
|
|
@@ -98,6 +101,30 @@ static struct gpio_led wbs510_leds_gpio[] __initdata = {
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
+static struct gpio_led cpe210_v2_leds_gpio[] __initdata = {
|
|
|
|
|
+ {
|
|
|
|
|
+ .name = "tp-link:green:lan0",
|
|
|
|
|
+ .gpio = CPE510_GPIO_LED_LAN0,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ }, {
|
|
|
|
|
+ .name = "tp-link:green:link1",
|
|
|
|
|
+ .gpio = CPE510_GPIO_LED_L1,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ }, {
|
|
|
|
|
+ .name = "tp-link:green:link2",
|
|
|
|
|
+ .gpio = CPE510_GPIO_LED_L2,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ }, {
|
|
|
|
|
+ .name = "tp-link:green:link3",
|
|
|
|
|
+ .gpio = CPE510_GPIO_LED_L3,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ }, {
|
|
|
|
|
+ .name = "tp-link:green:link4",
|
|
|
|
|
+ .gpio = CPE510_GPIO_LED_L4,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ },
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
|
|
static struct gpio_keys_button cpe510_gpio_keys[] __initdata = {
|
|
|
|
|
{
|
|
|
|
|
.desc = "Reset button",
|
|
|
|
|
@@ -109,6 +136,17 @@ static struct gpio_keys_button cpe510_gpio_keys[] __initdata = {
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
+static struct gpio_keys_button cpe210_v2_gpio_keys[] __initdata = {
|
|
|
|
|
+ {
|
|
|
|
|
+ .desc = "Reset button",
|
|
|
|
|
+ .type = EV_KEY,
|
|
|
|
|
+ .code = KEY_RESTART,
|
|
|
|
|
+ .debounce_interval = CPE510_KEYS_DEBOUNCE_INTERVAL,
|
|
|
|
|
+ .gpio = CPE210_V2_GPIO_BTN_RESET,
|
|
|
|
|
+ .active_low = 1,
|
|
|
|
|
+ }
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
|
|
static void __init cpe_setup(u8 *mac)
|
|
|
|
|
{
|
|
|
|
|
/* Disable JTAG, enabling GPIOs 0-3 */
|
|
|
|
|
@@ -171,9 +209,33 @@ static void __init wbs_setup(void)
|
|
|
|
|
ath79_register_wmac(ee, mac);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
+static void __init cpe210_v2_setup(void)
|
|
|
|
|
+{
|
|
|
|
|
+ u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
|
|
|
|
|
+ u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
|
|
|
|
|
+
|
|
|
|
|
+ ath79_register_leds_gpio(-1, ARRAY_SIZE(cpe210_v2_leds_gpio),
|
|
|
|
|
+ cpe210_v2_leds_gpio);
|
|
|
|
|
+ ath79_register_gpio_keys_polled(-1, CPE510_KEYS_POLL_INTERVAL,
|
|
|
|
|
+ ARRAY_SIZE(cpe210_v2_gpio_keys),
|
|
|
|
|
+ cpe210_v2_gpio_keys);
|
|
|
|
|
+ ath79_register_m25p80(NULL);
|
|
|
|
|
+ ath79_register_mdio(0, 0x0);
|
|
|
|
|
+ ath79_init_mac(ath79_eth0_data.mac_addr, mac, 0);
|
|
|
|
|
+ ath79_eth0_data.duplex = DUPLEX_FULL;
|
|
|
|
|
+ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII;
|
|
|
|
|
+ ath79_eth0_data.speed = SPEED_100;
|
|
|
|
|
+ ath79_eth0_data.phy_mask = BIT(4);
|
|
|
|
|
+ ath79_register_eth(0);
|
|
|
|
|
+ ath79_register_wmac(ee, mac);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
MIPS_MACHINE(ATH79_MACH_CPE210, "CPE210", "TP-LINK CPE210/220",
|
|
|
|
|
cpe210_setup);
|
|
|
|
|
|
|
|
|
|
+MIPS_MACHINE(ATH79_MACH_CPE210_V2, "CPE210V2", "TP-LINK CPE210 v2",
|
|
|
|
|
+ cpe210_v2_setup);
|
|
|
|
|
+
|
|
|
|
|
MIPS_MACHINE(ATH79_MACH_CPE510, "CPE510", "TP-LINK CPE510/520",
|
|
|
|
|
cpe510_setup);
|
|
|
|
|
|
|
|
|
|
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
|
|
|
|
|
index a621fe2c90..9b1d83beb9 100644
|
|
|
|
|
--- a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
|
|
|
|
|
+++ b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
|
|
|
|
|
@@ -68,7 +68,8 @@ enum ath79_mach_type {
|
|
|
|
|
ATH79_MACH_CF_E380AC_V2, /* COMFAST CF-E380AC v2 */
|
|
|
|
|
ATH79_MACH_CF_E520N, /* COMFAST CF-E520N */
|
|
|
|
|
ATH79_MACH_CF_E530N, /* COMFAST CF-E530N */
|
|
|
|
|
- ATH79_MACH_CPE210, /* TP-LINK CPE210 */
|
|
|
|
|
+ ATH79_MACH_CPE210, /* TP-LINK CPE210 v1 */
|
|
|
|
|
+ ATH79_MACH_CPE210_V2, /* TP-LINK CPE210 v2 */
|
|
|
|
|
ATH79_MACH_CPE505N, /* P&W CPE505N */
|
|
|
|
|
ATH79_MACH_CPE510, /* TP-LINK CPE510 */
|
|
|
|
|
ATH79_MACH_CPE830, /* YunCore CPE830 */
|
|
|
|
|
diff --git a/target/linux/ar71xx/image/generic-tp-link.mk b/target/linux/ar71xx/image/generic-tp-link.mk
|
|
|
|
|
index b0d99e2599..efa8718417 100644
|
|
|
|
|
--- a/target/linux/ar71xx/image/generic-tp-link.mk
|
|
|
|
|
+++ b/target/linux/ar71xx/image/generic-tp-link.mk
|
|
|
|
|
@@ -153,6 +153,18 @@ define Device/cpe210-220-v1
|
|
|
|
|
endef
|
|
|
|
|
TARGET_DEVICES += cpe210-220-v1
|
|
|
|
|
|
|
|
|
|
+define Device/cpe210-v2
|
|
|
|
|
+ $(Device/cpe510-520-v1)
|
|
|
|
|
+ DEVICE_TITLE := TP-LINK CPE210 v2
|
|
|
|
|
+ BOARDNAME := CPE210V2
|
|
|
|
|
+ TPLINK_BOARD_ID := CPE210V2
|
|
|
|
|
+ KERNEL := kernel-bin | patch-cmdline | lzma | tplink-v1-header
|
|
|
|
|
+ TPLINK_HWID := 0x0
|
|
|
|
|
+ TPLINK_HWREV := 0
|
|
|
|
|
+ TPLINK_HEADER_VERSION := 1
|
|
|
|
|
+endef
|
|
|
|
|
+TARGET_DEVICES += cpe210-v2
|
|
|
|
|
+
|
|
|
|
|
define Device/wbs210-v1
|
|
|
|
|
$(Device/cpe510-520-v1)
|
|
|
|
|
DEVICE_TITLE := TP-LINK WBS210 v1
|
|
|
|
|
diff --git a/tools/firmware-utils/src/tplink-safeloader.c b/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
index 88e2e88bdf..05009a3800 100644
|
|
|
|
|
--- a/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
+++ b/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
@@ -153,6 +153,48 @@ static struct device_info boards[] = {
|
|
|
|
|
.first_sysupgrade_partition = "os-image",
|
|
|
|
|
.last_sysupgrade_partition = "file-system",
|
|
|
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ /** Firmware layout for the CPE210 V2 */
|
|
|
|
|
+ {
|
|
|
|
|
+ .id = "CPE210V2",
|
|
|
|
|
+ .vendor = "CPE210(TP-LINK|UN|N300-2|00000000):2.0\r\n",
|
|
|
|
|
+ .support_list =
|
|
|
|
|
+ "SupportList:\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|EU|N300-2|00000000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|EU|N300-2|45550000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|EU|N300-2|55530000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|UN|N300-2|00000000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|UN|N300-2|45550000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|UN|N300-2|55530000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|US|N300-2|55530000):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|UN|N300-2):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|EU|N300-2):2.0\r\n"
|
|
|
|
|
+ "CPE210(TP-LINK|US|N300-2):2.0\r\n",
|
|
|
|
|
+ .support_trail = '\xff',
|
|
|
|
|
+ .soft_ver = NULL,
|
|
|
|
|
+
|
|
|
|
|
+ .partitions = {
|
|
|
|
|
+ {"fs-uboot", 0x00000, 0x20000},
|
|
|
|
|
+ {"partition-table", 0x20000, 0x02000},
|
|
|
|
|
+ {"default-mac", 0x30000, 0x00020},
|
|
|
|
|
+ {"product-info", 0x31100, 0x00100},
|
|
|
|
|
+ {"device-info", 0x31400, 0x00400},
|
|
|
|
|
+ {"signature", 0x32000, 0x00400},
|
|
|
|
|
+ {"device-id", 0x33000, 0x00100},
|
|
|
|
|
+ {"os-image", 0x40000, 0x170000},
|
|
|
|
|
+ {"soft-version", 0x1b0000, 0x00100},
|
|
|
|
|
+ {"support-list", 0x1b1000, 0x01000},
|
|
|
|
|
+ {"file-system", 0x1c0000, 0x600000},
|
|
|
|
|
+ {"user-config", 0x7c0000, 0x10000},
|
|
|
|
|
+ {"default-config", 0x7d0000, 0x10000},
|
|
|
|
|
+ {"log", 0x7e0000, 0x10000},
|
|
|
|
|
+ {"radio", 0x7f0000, 0x10000},
|
|
|
|
|
+ {NULL, 0, 0}
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ .first_sysupgrade_partition = "os-image",
|
|
|
|
|
+ .last_sysupgrade_partition = "file-system",
|
|
|
|
|
+ },
|
|
|
|
|
|
|
|
|
|
/** Firmware layout for the CPE510/520 */
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
From 9a70c537d768e767a682cb4c4fa4607d9236560b Mon Sep 17 00:00:00 2001
|
|
|
|
|
From: Adrian Schmutzler <freifunk@adrianschmutzler.de>
|
|
|
|
|
Date: Wed, 2 May 2018 23:10:06 +0200
|
|
|
|
|
Subject: [PATCH] ar71xx: Fix kernel partition size for CPE210 v2
|
|
|
|
|
|
|
|
|
|
The changed partition for the CPE210/510 v1 is linked in
|
|
|
|
|
generic-tp-link.mk, but has not been changed in
|
|
|
|
|
tplink-safeloader.c so far.
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
|
|
|
|
|
|
|
|
|
|
Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
|
|
|
|
|
---
|
|
|
|
|
tools/firmware-utils/src/tplink-safeloader.c | 8 ++++----
|
|
|
|
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
|
|
|
|
|
|
diff --git a/tools/firmware-utils/src/tplink-safeloader.c b/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
index 5e88653ac2..a7667a7a16 100644
|
|
|
|
|
--- a/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
+++ b/tools/firmware-utils/src/tplink-safeloader.c
|
|
|
|
|
@@ -182,10 +182,10 @@ static struct device_info boards[] = {
|
|
|
|
|
{"device-info", 0x31400, 0x00400},
|
|
|
|
|
{"signature", 0x32000, 0x00400},
|
|
|
|
|
{"device-id", 0x33000, 0x00100},
|
|
|
|
|
- {"os-image", 0x40000, 0x170000},
|
|
|
|
|
- {"soft-version", 0x1b0000, 0x00100},
|
|
|
|
|
- {"support-list", 0x1b1000, 0x01000},
|
|
|
|
|
- {"file-system", 0x1c0000, 0x600000},
|
|
|
|
|
+ {"os-image", 0x40000, 0x1c0000},
|
|
|
|
|
+ {"file-system", 0x200000, 0x5b0000},
|
|
|
|
|
+ {"soft-version", 0x7b0000, 0x00100},
|
|
|
|
|
+ {"support-list", 0x7b1000, 0x01000},
|
|
|
|
|
{"user-config", 0x7c0000, 0x10000},
|
|
|
|
|
{"default-config", 0x7d0000, 0x10000},
|
|
|
|
|
{"log", 0x7e0000, 0x10000},
|
|
|
|
|
--
|
|
|
|
|
2.11.0
|
|
|
|
|
|