X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;ds=sidebyside;f=target%2Flinux%2Far71xx%2Fbase-files%2Flib%2Far71xx.sh;h=9a123b60e1ac469c47c5dead15516ddba1a792a2;hb=e1444ab59cfcd330cfac6f51aa14106961585ee1;hp=a751c64a3ad4f7ff092db6ec7fbf2762519fab1a;hpb=bad2f9c4dc39ff8a8bdc7ad4bd86f2c068457a5a;p=oweals%2Fopenwrt.git diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index a751c64a3a..9a123b60e1 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -16,7 +16,7 @@ ar71xx_get_mtd_offset_size_format() { dev=$(find_mtd_part $mtd) [ -z "$dev" ] && return - dd if=$dev bs=1 skip=$offset count=$size 2>/dev/null | hexdump -v -e "1/1 \"$format\"" + dd if=$dev iflag=skip_bytes bs=$size skip=$offset count=1 2>/dev/null | hexdump -v -e "1/1 \"$format\"" } ar71xx_get_mtd_part_magic() { @@ -98,6 +98,33 @@ ubnt_xm_board_detect() { [ -z "$model" ] || AR71XX_MODEL="${model}${magic:3:1}" } +ubnt_unifi_ac_get_mtd_part_magic() { + ar71xx_get_mtd_offset_size_format EEPROM 12 2 %02x +} + +ubnt_unifi_ac_board_detect() { + local model + local magic + + magic="$(ubnt_unifi_ac_get_mtd_part_magic)" + case ${magic:0:4} in + "e517") + model="Ubiquiti UniFi-AC-LITE" + ;; + "e537") + model="Ubiquiti UniFi-AC-PRO" + ;; + "e557") + model="Ubiquiti UniFi-AC-MESH" + ;; + "e567") + model="Ubiquiti UniFi-AC-MESH-PRO" + ;; + esac + + [ -z "$model" ] || AR71XX_MODEL="${model}" +} + cybertan_get_hw_magic() { local part @@ -215,6 +242,9 @@ tplink_board_detect() { [ "$hwid" = '08020002' -a "$mid" = '00000002' ] && hwver=' v2' ;; + "081000"*) + model="TP-Link TL-WR810N" + ;; "083000"*) model="TP-Link TL-WA830RE" @@ -234,6 +264,9 @@ tplink_board_detect() { "085000"*) model="TP-Link TL-WA850RE" ;; + "085500"*) + model="TP-Link TL-WA855RE" + ;; "086000"*) model="TP-Link TL-WA860RE" ;; @@ -284,12 +317,6 @@ tplink_board_detect() { "360000"*) model="TP-Link TL-WDR3600" ;; - "3C0001"*) - model="OOLITE" - ;; - "3C0002"*) - model="MINIBOX_V1" - ;; "430000"*) model="TP-Link TL-WDR4300" ;; @@ -309,6 +336,9 @@ tplink_board_detect() { "49000002") model="TP-Link TL-WDR4900" ;; + "640000"*) + model="TP-Link TL-MR6400" + ;; "65000002") model="TP-Link TL-WDR6500" ;; @@ -347,7 +377,7 @@ tplink_pharos_get_model_string() { } 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%%\(*}" @@ -355,6 +385,14 @@ 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 + + dd if=$part iflag=skip_bytes bs=64 skip=4360 count=1 2>/dev/null | tr -d '\r\0' | head -n 1 +} + ar71xx_board_detect() { local machine local name @@ -410,6 +448,9 @@ ar71xx_board_detect() { *"AP121-MINI") name="ap121-mini" ;; + *"AP121F") + name="ap121f" + ;; *"AP132 reference board") name="ap132" ;; @@ -437,15 +478,36 @@ ar71xx_board_detect() { *"AP90Q") name="ap90q" ;; + *"AP91-5G") + name="ap91-5g" + ;; + *"Archer C25 v1") + name="archer-c25-v1" + ;; *"Archer C5") name="archer-c5" ;; + *"Archer C7 v4") + name="archer-c7-v4" + ;; + *"Archer C7 v5") + name="archer-c7-v5" + ;; + *"Archer C58 v1") + name="archer-c58-v1" + ;; *"Archer C59 v1") name="archer-c59-v1" + ;; + *"Archer C59 v2") + name="archer-c59-v2" ;; *"Archer C60 v1") name="archer-c60-v1" ;; + *"Archer C60 v2") + name="archer-c60-v2" + ;; *"Archer C7") name="archer-c7" ;; @@ -492,12 +554,24 @@ ar71xx_board_detect() { *"CF-E320N v2") name="cf-e320n-v2" ;; + *"CF-E355AC v1") + name="cf-e355ac-v1" + ;; + *"CF-E355AC v2") + name="cf-e355ac-v2" + ;; + *"CF-E375AC") + name="cf-e375ac" + ;; *"CF-E380AC v1") name="cf-e380ac-v1" ;; *"CF-E380AC v2") name="cf-e380ac-v2" ;; + *"CF-E385AC") + name="cf-e385ac" + ;; *"CF-E520N") name="cf-e520n" ;; @@ -506,14 +580,25 @@ ar71xx_board_detect() { ;; *"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_v2_get_model_string)" + case $AR71XX_MODEL in + 'TP-Link CPE510 v2.0') + ;; + *) + tplink_pharos_board_detect "$(tplink_pharos_get_model_string | tr -d '\r')" + ;; + esac ;; *"CPE830") name="cpe830" @@ -527,6 +612,9 @@ ar71xx_board_detect() { *"CR5000") name="cr5000" ;; + *"DAP-1330 Rev. A1") + name="dap-1330-a1" + ;; *"DAP-2695 rev. A1") name="dap-2695-a1" ;; @@ -582,6 +670,9 @@ ar71xx_board_detect() { *"Domino Pi") name="gl-domino" ;; + *"DR342") + name="dr342" + ;; *"DR344") name="dr344" ;; @@ -594,12 +685,30 @@ ar71xx_board_detect() { *"DW33D") name="dw33d" ;; + *"E1700AC v2") + name="e1700ac-v2" + ;; *"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" @@ -616,12 +725,18 @@ ar71xx_board_detect() { *"EL-MINI") name="el-mini" ;; + *"EmbWir-Balin") + name="ew-balin" + ;; *"EmbWir-Dorin") name="ew-dorin" ;; *"EmbWir-Dorin-Router") name="ew-dorin-router" ;; + *"ENS202EXT") + name="ens202ext" + ;; *"EPG5000") name="epg5000" ;; @@ -631,15 +746,33 @@ ar71xx_board_detect() { *"ESR900") name="esr900" ;; - *"GL AR150") + *"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 AR300") + *"GL-AR300") name="gl-ar300" ;; *"GL-AR300M") name="gl-ar300m" ;; + *"GL-AR750") + name="gl-ar750" + ;; + *"GL-AR750S") + name="gl-ar750s" + ;; *"GL-CONNECT INET v1") name="gl-inet" @@ -651,6 +784,9 @@ ar71xx_board_detect() { *"GL-MIFI") name="gl-mifi" ;; + *"GL-USB150") + name="gl-usb150" + ;; *"HiveAP-121") name="hiveap-121" ;; @@ -675,9 +811,18 @@ ar71xx_board_detect() { *"JWAP230") name="jwap230" ;; + *"Koala") + name="koala" + ;; + *"LAN Turtle") + name="lan-turtle" + ;; *"Lima"*) name="lima" ;; + *"Litebeam M5"*) + name="lbe-m5" + ;; *"Loco M XW") name="loco-m-xw" ;; @@ -690,6 +835,9 @@ ar71xx_board_detect() { *"MiniBox V1.0") name="minibox-v1" ;; + *"Minibox V3.2") + name="minibox-v3.2" + ;; *"MR12") name="mr12" ;; @@ -732,6 +880,9 @@ ar71xx_board_detect() { *"MZK-W300NH") name="mzk-w300nh" ;; + *"N5Q") + name="n5q" + ;; *"Nanostation M") name="nanostation-m" ubnt_xm_board_detect @@ -794,7 +945,16 @@ ar71xx_board_detect() { name="onion-omega" ;; *"Oolite V1.0") - name="oolite" + name="oolite-v1" + ;; + *"Packet Squirrel") + name="packet-squirrel" + ;; + *"Oolite V5.2") + name="oolite-v5.2" + ;; + *"Oolite V5.2-Dev") + name="oolite-v5.2-dev" ;; *"PB42") name="pb42" @@ -808,6 +968,9 @@ ar71xx_board_detect() { *"Qihoo 360 C301") name="qihoo-c301" ;; + *"R36A") + name="r36a" + ;; *"R602N") name="r602n" ;; @@ -817,6 +980,9 @@ ar71xx_board_detect() { *"Rambutan"*) name="rambutan" ;; + *"RE355") + name="re355" + ;; *"RE450") name="re450" ;; @@ -833,6 +999,9 @@ ar71xx_board_detect() { *"RouterBOARD 2011iL") name="rb-2011il" ;; + *"RouterBOARD 2011iLS") + name="rb-2011ils" + ;; *"RouterBOARD 2011L") name="rb-2011l" ;; @@ -884,6 +1053,9 @@ ar71xx_board_detect() { *"RouterBOARD 750GL") name="rb-750gl" ;; + *"RouterBOARD 750P r2") + name="rb-750p-pbr2" + ;; *"RouterBOARD 750UP r2") name="rb-750up-r2" ;; @@ -893,6 +1065,12 @@ ar71xx_board_detect() { *"RouterBOARD 751G") name="rb-751g" ;; + *"RouterBOARD 911-2Hn") + name="rb-911-2hn" + ;; + *"RouterBOARD 911-5Hn") + name="rb-911-5hn" + ;; *"RouterBOARD 911G-2HPnD") name="rb-911g-2hpnd" ;; @@ -908,7 +1086,16 @@ ar71xx_board_detect() { *"RouterBOARD 912UAG-5HPnD") name="rb-912uag-5hpnd" ;; - *"RouterBOARD 941-2nD") + *"RouterBOARD 921GS-5HPacD r2") + name="rb-921gs-5hpacd-r2" + ;; + *"RouterBOARD 922UAGS-5HPacD") + name="rb-922uags-5hpacd" + ;; + *"RouterBOARD 931-2nD") + name="rb-931-2nd" + ;; + *"RouterBOARD"*"941-2nD") name="rb-941-2nd" ;; *"RouterBOARD 951G-2HnD") @@ -929,21 +1116,39 @@ ar71xx_board_detect() { *"RouterBOARD LHG 5nD") name="rb-lhg-5nd" ;; + *"RouterBOARD mAP 2nD") + name="rb-map-2nd" + ;; *"RouterBOARD mAP L-2nD") name="rb-mapl-2nd" ;; + *"RouterBOARD SXT 2nD r3") + name="rb-sxt-2nd-r3" + ;; *"RouterBOARD SXT Lite2") name="rb-sxt2n" ;; *"RouterBOARD SXT Lite5") name="rb-sxt5n" ;; + *"RouterBOARD wAP 2nD r2") + name="rb-wap-2nd" + ;; + *"RouterBOARD wAP R-2nD") + name="rb-wapr-2nd" + ;; + *"RouterBOARD wAP G-5HacT2HnD") + name="rb-wapg-5hact2hnd" + ;; *"RouterStation") name="routerstation" ;; *"RouterStation Pro") name="routerstation-pro" ;; + *"RUT900") + name="rut900" + ;; *"RW2458N") name="rw2458n" ;; @@ -965,6 +1170,9 @@ ar71xx_board_detect() { *"SR3200") name="sr3200" ;; + *"T830") + name="t830" + ;; *"TellStick ZNet Lite") name="tellstick-znet-lite" ;; @@ -1016,6 +1224,9 @@ ar71xx_board_detect() { *"TL-MR3420 v2") name="tl-mr3420-v2" ;; + *"TL-MR6400") + name="tl-mr6400" + ;; *"TL-WA701ND v2") name="tl-wa701nd-v2" ;; @@ -1043,6 +1254,9 @@ ar71xx_board_detect() { *"TL-WA850RE v2") name="tl-wa850re-v2" ;; + *"TL-WA855RE v1") + name="tl-wa855re-v1" + ;; *"TL-WA860RE") name="tl-wa860re" ;; @@ -1058,6 +1272,9 @@ ar71xx_board_detect() { *"TL-WA901ND v4") name="tl-wa901nd-v4" ;; + *"TL-WA901ND v5") + name="tl-wa901nd-v5" + ;; *"TL-WDR3320 v2") name="tl-wdr3320-v2" ;; @@ -1079,6 +1296,9 @@ ar71xx_board_detect() { *"TL-WR1041N v2") name="tl-wr1041n-v2" ;; + *"TL-WR1043N v5") + name="tl-wr1043n-v5" + ;; *"TL-WR1043ND") name="tl-wr1043nd" ;; @@ -1100,6 +1320,9 @@ ar71xx_board_detect() { *"TL-WR720N"*) name="tl-wr720n-v3" ;; + *"TL-WR740N/ND v6") + name="tl-wr740n-v6" + ;; *"TL-WR741ND") name="tl-wr741nd" ;; @@ -1115,6 +1338,9 @@ ar71xx_board_detect() { *"TL-WR810N") name="tl-wr810n" ;; + *"TL-WR810N v2") + name="tl-wr810n-v2" + ;; *"TL-WR840N v2") name="tl-wr840n-v2" ;; @@ -1142,9 +1368,15 @@ ar71xx_board_detect() { *"TL-WR842N/ND v3") name="tl-wr842n-v3" ;; + *"TL-WR902AC v1") + name="tl-wr902ac-v1" + ;; *"TL-WR940N v4") name="tl-wr940n-v4" ;; + *"TL-WR940N v6") + name="tl-wr940n-v6" + ;; *"TL-WR941N/ND v5") name="tl-wr941nd-v5" ;; @@ -1154,6 +1386,12 @@ ar71xx_board_detect() { *"TL-WR941ND") name="tl-wr941nd" ;; + *"TL-WR942N v1") + name="tl-wr942n-v1" + ;; + *"TS-D084") + name="ts-d084" + ;; *"Tube2H") name="tube2h" ;; @@ -1165,9 +1403,11 @@ ar71xx_board_detect() { ;; *"UniFi-AC-LITE/MESH") name="unifiac-lite" + ubnt_unifi_ac_board_detect ;; - *"UniFi-AC-PRO") + *"UniFi-AC-PRO/MESH-PRO") name="unifiac-pro" + ubnt_unifi_ac_board_detect ;; *"UniFiAP Outdoor") name="unifi-outdoor" @@ -1175,17 +1415,23 @@ ar71xx_board_detect() { *"UniFiAP Outdoor+") name="unifi-outdoor-plus" ;; + *"WAM250") + name="wam250" + ;; *"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" ;; + *"WI2A-AC200i") + name="wi2a-ac200i" + ;; *"WHR-G301N") name="whr-g301n" ;; @@ -1195,6 +1441,9 @@ ar71xx_board_detect() { *"WHR-HP-GN") name="whr-hp-gn" ;; + *"WiFi Pineapple NANO") + name="wifi-pineapple-nano" + ;; *"WLAE-AG300N") name="wlae-ag300n" ;; @@ -1309,12 +1558,3 @@ ar71xx_board_detect() { echo "$AR71XX_BOARD_NAME" > /tmp/sysinfo/board_name echo "$AR71XX_MODEL" > /tmp/sysinfo/model } - -ar71xx_board_name() { - local name - - [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name) - [ -z "$name" ] && name="unknown" - - echo "$name" -}