[ -z "$model" ] || AR71XX_MODEL="${model}${magic:3:1}"
}
+ubnt_ac_lite_get_mtd_part_magic() {
+ ar71xx_get_mtd_offset_size_format EEPROM 12 2 %02x
+}
+
+ubnt_ac_lite_board_detect() {
+ local model
+ local magic
+
+ magic="$(ubnt_ac_lite_get_mtd_part_magic)"
+ case ${magic:0:4} in
+ "e517")
+ model="Ubiquiti UniFi-AC-LITE"
+ ;;
+ "e557")
+ model="Ubiquiti UniFi-AC-MESH"
+ ;;
+ esac
+
+ [ -z "$model" ] || AR71XX_MODEL="${model}"
+}
+
cybertan_get_hw_magic() {
local part
}
tplink_pharos_board_detect() {
- local model_string="$(tplink_pharos_get_model_string | tr -d '\r')"
+ local model_string="$1"
local oIFS="$IFS"; IFS=":"; set -- $model_string; IFS="$oIFS"
local model="${1%%\(*}"
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
+
+ dd if=$part bs=1 skip=4360 count=64 2>/dev/null | tr -d '\r\0' | head -n 1
+}
+
ar71xx_board_detect() {
local machine
local name
*"Archer C7 v4")
name="archer-c7-v4"
;;
+ *"Archer C7 v5")
+ name="archer-c7-v5"
+ ;;
*"Archer C58 v1")
name="archer-c58-v1"
;;
*"Archer C60 v1")
name="archer-c60-v1"
;;
+ *"Archer C60 v2")
+ name="archer-c60-v2"
+ ;;
*"Archer C7")
name="archer-c7"
;;
;;
*"CPE210/220")
name="cpe210"
- tplink_pharos_board_detect
+ tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')"
+ ;;
+ *"CPE210 v2")
+ name="cpe210-v2"
+ tplink_pharos_board_detect "$(tplink_pharos_v2_get_model_string)"
;;
*"CPE505N")
name="cpe505n"
;;
*"CPE510/520")
name="cpe510"
- tplink_pharos_board_detect
+ tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')"
;;
*"CPE830")
name="cpe830"
*"E2100L")
name="e2100l"
;;
+ *"E558 v2")
+ name="e558-v2"
+ ;;
*"E600G v2")
name="e600g-v2"
;;
*"E600GAC v2")
name="e600gac-v2"
;;
+ *"E750A v4")
+ name="e750a-v4"
+ ;;
+ *"E750G v8")
+ name="e750g-v8"
+ ;;
*"EAP120")
name="eap120"
- tplink_pharos_board_detect
+ tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')"
;;
*"EAP300 v2")
name="eap300v2"
*"eTactica EG-200")
name="rme-eg200"
;;
+ *"FRITZ!Box 4020")
+ name="fritz4020"
+ ;;
*"FRITZ!WLAN Repeater 300E")
name="fritz300e"
;;
+ *"FRITZ!WLAN Repeater 450E")
+ name="fritz450e"
+ ;;
*"GL-AR150")
name="gl-ar150"
;;
*"GL-AR750")
name="gl-ar750"
;;
+ *"GL-AR750S")
+ name="gl-ar750s"
+ ;;
*"GL-CONNECT INET v1")
name="gl-inet"
*"JWAP230")
name="jwap230"
;;
+ *"Koala")
+ name="koala"
+ ;;
*"LAN Turtle")
name="lan-turtle"
;;
*"RouterBOARD 2011iL")
name="rb-2011il"
;;
+ *"RouterBOARD 2011iLS")
+ name="rb-2011ils"
+ ;;
*"RouterBOARD 2011L")
name="rb-2011l"
;;
*"RouterBOARD 921GS-5HPacD r2")
name="rb-921gs-5hpacd-r2"
;;
+ *"RouterBOARD 931-2nD")
+ name="rb-931-2nd"
+ ;;
*"RouterBOARD 941-2nD")
name="rb-941-2nd"
;;
*"RouterBOARD wAP 2nD r2")
name="rb-wap-2nd"
;;
+ *"RouterBOARD wAP R-2nD")
+ name="rb-wapr-2nd"
+ ;;
*"RouterBOARD wAP G-5HacT2HnD")
name="rb-wapg-5hact2hnd"
;;
*"TL-WR940N v4")
name="tl-wr940n-v4"
;;
+ *"TL-WR940N v6")
+ name="tl-wr940n-v6"
+ ;;
*"TL-WR941N/ND v5")
name="tl-wr941nd-v5"
;;
*"TL-WR942N v1")
name="tl-wr942n-v1"
;;
+ *"TS-D084")
+ name="ts-d084"
+ ;;
*"Tube2H")
name="tube2h"
;;
;;
*"UniFi-AC-LITE/MESH")
name="unifiac-lite"
+ ubnt_ac_lite_board_detect
;;
*"UniFi-AC-PRO")
name="unifiac-pro"
;;
*"WBS210")
name="wbs210"
- tplink_pharos_board_detect
+ tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')"
;;
*"WBS510")
name="wbs510"
- tplink_pharos_board_detect
+ tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')"
;;
"WeIO"*)
name="weio"