X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=target%2Flinux%2Far71xx%2Fbase-files%2Flib%2Fupgrade%2Fplatform.sh;h=36ee082e5e67dd32a8412713811cce673e477e18;hb=refs%2Fheads%2Fcpe210v2;hp=8ebdea3018918e578af6b27d9465d0324fc17530;hpb=68b5d34f69421264de6e5d77760fcc2bfe9ee687;p=openwrt%2Fstaging%2Flynxis.git diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index 8ebdea3018..36ee082e5e 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -7,7 +7,7 @@ PART_NAME=firmware RAMFS_COPY_DATA=/lib/ar71xx.sh -[ -x /usr/sbin/nandwrite ] && RAMFS_COPY_BIN=/usr/sbin/nandwrite +RAMFS_COPY_BIN='nandwrite' CI_BLKSZ=65536 CI_LDADR=0x80060000 @@ -94,9 +94,10 @@ tplink_get_image_boot_size() { } tplink_pharos_check_image() { - local magic_long="$(get_magic_long "$1")" - [ "$magic_long" != "7f454c46" ] && { - echo "Invalid image magic '$magic_long'" + 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 } @@ -110,7 +111,7 @@ tplink_pharos_check_image() { # 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 | while read line; do + 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)" @@ -184,7 +185,7 @@ alfa_check_image() { } platform_nand_board_name() { - local board=$(ar71xx_board_name) + local board=$(board_name) case "$board" in rb*) echo "routerboard";; @@ -193,7 +194,7 @@ platform_nand_board_name() { } platform_check_image() { - local board=$(ar71xx_board_name) + local board=$(board_name) local magic="$(get_magic_word "$1")" local magic_long="$(get_magic_long "$1")" @@ -203,9 +204,12 @@ platform_check_image() { airgatewaypro|\ airgateway|\ airrouter|\ + ap121f|\ ap132|\ ap531b0|\ ap90q|\ + archer-c25-v1|\ + archer-c58-v1|\ archer-c59-v1|\ archer-c60-v1|\ bullet-m|\ @@ -213,6 +217,7 @@ platform_check_image() { carambola2|\ cf-e316n-v2|\ cf-e320n-v2|\ + cf-e355ac|\ cf-e380ac-v1|\ cf-e380ac-v2|\ cf-e520n|\ @@ -236,6 +241,7 @@ platform_check_image() { dr531|\ dragino2|\ ebr-2310-c1|\ + ens202ext|\ epg5000|\ esr1750|\ esr900|\ @@ -246,6 +252,7 @@ platform_check_image() { gl-ar300|\ gl-domino|\ gl-mifi|\ + gl-usb150|\ hiwifi-hc6361|\ hornet-ub-x2|\ jwap230|\ @@ -270,6 +277,7 @@ platform_check_image() { tew-712br|\ tew-732br|\ tew-823dru|\ + tl-wr942n-v1|\ unifi-outdoor|\ unifiac-lite|\ unifiac-pro|\ @@ -283,6 +291,7 @@ platform_check_image() { wpj342|\ wpj344|\ wpj531|\ + wpj558|\ wpj563|\ wrt400n|\ wrtnode2q|\ @@ -319,7 +328,6 @@ platform_check_image() { hornet-ub|\ mr12|\ mr16|\ - wpj558|\ zbt-we1526|\ zcn-1523h-2|\ zcn-1523h-5) @@ -398,6 +406,7 @@ platform_check_image() { tl-mr3220|\ tl-mr3420-v2|\ tl-mr3420|\ + tl-mr6400|\ tl-wa701nd-v2|\ tl-wa7210n-v2|\ tl-wa750re|\ @@ -407,6 +416,7 @@ platform_check_image() { tl-wa830re-v2|\ tl-wa850re|\ tl-wa850re-v2|\ + tl-wa855re-v1|\ tl-wa860re|\ tl-wa901nd-v2|\ tl-wa901nd-v3|\ @@ -426,6 +436,7 @@ platform_check_image() { tl-wr703n|\ tl-wr710n|\ tl-wr720n-v3|\ + tl-wr740n-v6|\ tl-wr741nd-v4|\ tl-wr741nd|\ tl-wr802n-v1|\ @@ -440,6 +451,7 @@ platform_check_image() { tl-wr841n-v9|\ tl-wr842n-v2|\ tl-wr842n-v3|\ + tl-wr902ac-v1|\ tl-wr941nd-v5|\ tl-wr941nd-v6|\ tl-wr940n-v4|\ @@ -519,6 +531,7 @@ platform_check_image() { return $? ;; c-60|\ + hiveap-121|\ nbg6716|\ r6100|\ rambutan|\ @@ -532,7 +545,14 @@ platform_check_image() { eap120|\ wbs210|\ wbs510) - tplink_pharos_check_image "$1" && return 0 + # magic = .ELF + tplink_pharos_check_image "$1" "7f454c46" && return 0 + return 1 + ;; + cpe210v2|\ + cpe510v2) + # magic = mktplinkfw v1 header + tplink_pharos_check_image "$1" "01000000" && return 0 return 1 ;; a40|\ @@ -641,6 +661,7 @@ platform_check_image() { return 0; ;; # these boards use metadata images + fritz300e|\ rb-750-r2|\ rb-750up-r2|\ rb-941-2nd|\ @@ -658,10 +679,11 @@ platform_check_image() { } platform_pre_upgrade() { - local board=$(ar71xx_board_name) + local board=$(board_name) case "$board" in c-60|\ + hiveap-121|\ nbg6716|\ r6100|\ rambutan|\ @@ -716,7 +738,7 @@ platform_pre_upgrade() { } platform_nand_pre_upgrade() { - local board=$(ar71xx_board_name) + local board=$(board_name) case "$board" in rb*) @@ -731,7 +753,7 @@ platform_nand_pre_upgrade() { } platform_do_upgrade() { - local board=$(ar71xx_board_name) + local board=$(board_name) case "$board" in all0258n) @@ -753,7 +775,8 @@ platform_do_upgrade() { platform_do_upgrade_allnet "0x9f080000" "$ARGV" ;; cap4200ag|\ - eap300v2) + eap300v2|\ + ens202ext) platform_do_upgrade_allnet "0xbf0a0000" "$ARGV" ;; dir-825-b1|\