get_image "$@" | dd bs=1 count=4 skip=53 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"'
}
+cybertan_get_image_magic() {
+ get_image "$@" | dd bs=8 count=1 skip=0 2>/dev/null | hexdump -v -n 8 -e '1/1 "%02x"'
+}
+
+cybertan_check_image() {
+ local magic="$(cybertan_get_image_magic "$1")"
+ local fw_magic="$(cybertan_get_hw_magic)"
+
+ [ "$fw_magic" != "$magic" ] && {
+ echo "Invalid image, ID mismatch, got:$magic, but need:$fw_magic"
+ return 1
+ }
+
+ return 0
+}
+
+platform_do_upgrade_compex() {
+ local fw_file=$1
+ local fw_part=$PART_NAME
+ local fw_mtd=$(find_mtd_part $fw_part)
+ local fw_length=0x$(dd if="$fw_file" bs=2 skip=1 count=4 2>/dev/null)
+ local fw_blocks=$(($fw_length / 65536))
+
+ if [ -n "$fw_mtd" ] && [ ${fw_blocks:-0} -gt 0 ]; then
+ local append=""
+ [ -f "$CONF_TAR" -a "$SAVE_CONFIG" -eq 1 ] && append="-j $CONF_TAR"
+
+ sync
+ dd if="$fw_file" bs=64k skip=1 count=$fw_blocks 2>/dev/null | \
+ mtd $append write - "$fw_part"
+ fi
+}
+
platform_check_image() {
local board=$(ar71xx_board_name)
local magic="$(get_magic_word "$1")"
dir-615-e4 | \
dir-825-c1 | \
dir-835-a1 | \
+ dragino2 | \
ew-dorin | \
ew-dorin-router | \
hornet-ub-x2 | \
dir825b_check_image "$1" && return 0
;;
- mynet-n600)
+ mynet-rext|\
+ wrt160nl)
+ cybertan_check_image "$1" && return 0
+ return 1
+ ;;
+
+ mynet-n600 | \
+ mynet-n750)
[ "$magic_long" != "5ea3a417" ] && {
echo "Invalid image, bad magic: $magic_long"
return 1
;;
archer-c7 | \
+ oolite | \
tl-mr10u | \
tl-mr11u | \
tl-mr13u | \
tl-wa7510n | \
tl-wa750re | \
tl-wa850re | \
+ tl-wa801nd-v2 | \
tl-wa901nd | \
tl-wa901nd-v2 | \
+ tl-wa901nd-v3 | \
tl-wdr3500 | \
tl-wdr4300 | \
+ tl-wdr4900-v2 | \
tl-wr703n | \
tl-wr710n | \
tl-wr720n-v3 | \
tl-wr941nd | \
tl-wr1041n-v2 | \
tl-wr1043nd | \
+ tl-wr1043nd-v2 | \
tl-wr2543n)
[ "$magic" != "0100" ] && {
echo "Invalid image type."
}
return 0
;;
- wrt160nl)
- [ "$magic" != "4e4c" ] && {
- echo "Invalid image type."
- return 1
- }
- return 0
- ;;
routerstation | \
routerstation-pro | \
ls-sr71 | \
eap7660d | \
ja76pf | \
ja76pf2 | \
- jwap003)
+ jwap003 | \
+ wp543 | \
+ wpe72)
[ "$magic" != "4349" ] && {
echo "Invalid image. Use *-sysupgrade.bin files on this board"
return 1
jwap003)
platform_do_upgrade_combined "$ARGV"
;;
+ wp543|\
+ wpe72)
+ platform_do_upgrade_compex "$ARGV"
+ ;;
all0258n )
platform_do_upgrade_allnet "0x9f050000" "$ARGV"
;;