X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=blobdiff_plain;f=target%2Flinux%2Fmediatek%2Fbase-files%2Flib%2Fupgrade%2Fplatform.sh;h=646ce0dc530c459796bfd186fee751c5fddc4447;hp=f2dd453a11aae590a8e10b02bcd94f44d5b8d166;hb=da8fc1511fc83f6ba2cf0e1e1feadbe1b9b58f4d;hpb=e81020c3173a108fb9045af3989a74f51997b44e diff --git a/target/linux/mediatek/base-files/lib/upgrade/platform.sh b/target/linux/mediatek/base-files/lib/upgrade/platform.sh index f2dd453a11..646ce0dc53 100755 --- a/target/linux/mediatek/base-files/lib/upgrade/platform.sh +++ b/target/linux/mediatek/base-files/lib/upgrade/platform.sh @@ -1,53 +1,29 @@ -# -# Copyright (C) 2016 OpenWrt.org -# +platform_do_upgrade() { + default_do_upgrade "$ARGV" +} -platform_do_upgrade() { - local tar_file="$1" - local board="$(cat /tmp/sysinfo/board_name)" +PART_NAME=firmware - echo "flashing kernel" - tar xf $tar_file sysupgrade-$board/kernel -O | mtd write - kernel +platform_check_image() { + local board=$(board_name) + local magic="$(get_magic_long "$1")" - echo "flashing rootfs" - tar xf $tar_file sysupgrade-$board/root -O | mtd write - rootfs + [ "$#" -gt 1 ] && return 1 - return 0 -} + case "$board" in + bananapi,bpi-r2) + [ "$magic" != "27051956" ] && { + echo "Invalid image type." + return 1 + } + return 0 + ;; -platform_check_image() { - local tar_file="$1" - local board=$(cat /tmp/sysinfo/board_name) - - case "$board" in - NAND) - nand_do_platform_check $board $1 - return $? - ;; - eMMC) - local kernel_length=`(tar xf $tar_file sysupgrade-$board/kernel -O | wc -c) 2> /dev/null` - local rootfs_length=`(tar xf $tar_file sysupgrade-$board/root -O | wc -c) 2> /dev/null` - ;; - - *) + *) echo "Sysupgrade is not supported on your board yet." - return 1 - ;; - esac - - [ "$kernel_length" = 0 -o "$rootfs_length" = 0 ] && { - echo "The upgarde image is corrupt." - return 1 - } - - return 0 -} + return 1 + ;; + esac -platform_pre_upgrade() { - local board=$(cat /tmp/sysinfo/board_name) - case "$board" in - NAND) - nand_do_upgrade $1 - ;; - esac -} + return 0 +}