2
0
forked from Ivasoft/openwrt

ar71xx: add support for TP-LINK CPE210/220/510/520

This adds support for the TP-LINK CPE210/220/510/520 (Pharos series). These
devices are very similar to the Ubiquiti NanoStations, but with better specs:
faster CPU, more RAM, 2x2 MIMO.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

SVN-Revision: 43385
This commit is contained in:
John Crispin
2014-11-26 08:59:32 +00:00
parent f318ae995a
commit 47ab1cbf23
10 changed files with 256 additions and 7 deletions

View File

@@ -229,6 +229,39 @@ tplink_board_detect() {
AR71XX_MODEL="$model $hwver"
}
tplink_pharos_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 2>/dev/null | head -n 1
}
tplink_pharos_board_detect() {
local model_string="$(tplink_pharos_get_model_string | tr -d '\r')"
local oIFS="$IFS"; IFS=":"; set -- $model_string; IFS="$oIFS"
local model
case "$1" in
'CPE210(TP-LINK|UN|N300-2)')
model='TP-Link CPE210'
;;
'CPE220(TP-LINK|UN|N300-2)')
model='TP-Link CPE220'
;;
'CPE510(TP-LINK|UN|N300-5)')
model='TP-Link CPE510'
;;
'CPE520(TP-LINK|UN|N300-5)')
model='TP-Link CPE520'
;;
esac
[ -n "$model" ] && AR71XX_MODEL="$model v$2"
}
ar71xx_board_detect() {
local machine
local name
@@ -302,6 +335,10 @@ ar71xx_board_detect() {
*CAP4200AG)
name="cap4200ag"
;;
*"CPE210/220/510/520")
name="cpe510"
tplink_pharos_board_detect
;;
*"DB120 reference board")
name="db120"
;;
@@ -775,7 +812,8 @@ ar71xx_board_detect() {
;;
esac
[ "${machine:0:8}" = 'TP-LINK ' ] && tplink_board_detect "$machine"
[ -z "$AR71XX_MODEL" ] && [ "${machine:0:8}" = 'TP-LINK ' ] && \
tplink_board_detect "$machine"
[ -z "$name" ] && name="unknown"