0429ca8b89ec26e07ab463373657e3d25ca6de06
[openwrt/staging/lynxis.git] / target / linux / mediatek / base-files / lib / upgrade / platform.sh
1 #
2 # Copyright (C) 2016 OpenWrt.org
3 #
4
5 platform_do_upgrade() {
6 local tar_file="$1"
7 local board="$(board_name)"
8
9 case "$(board_name)" in
10 mediatek,mt7623-rfb-nand-ephy |\
11 mediatek,mt7623-rfb-nand)
12 nand_do_upgrade $1
13 ;;
14 *)
15 echo "flashing kernel"
16 tar xf $tar_file sysupgrade-$board/kernel -O | mtd write - kernel
17
18 echo "flashing rootfs"
19 tar xf $tar_file sysupgrade-$board/root -O | mtd write - rootfs
20
21 return 0
22 ;;
23 esac
24 }
25
26 platform_check_image() {
27 local tar_file="$1"
28 local board=$(board_name)
29
30 case "$board" in
31 bananapi,bpi-r2 |\
32 mediatek,mt7623a-rfb-emmc)
33 local kernel_length=`(tar xf $tar_file sysupgrade-$board/kernel -O | wc -c) 2> /dev/null`
34 local rootfs_length=`(tar xf $tar_file sysupgrade-$board/root -O | wc -c) 2> /dev/null`
35 ;;
36
37 *)
38 echo "Sysupgrade is not supported on your board yet."
39 return 1
40 ;;
41 esac
42
43 [ "$kernel_length" = 0 -o "$rootfs_length" = 0 ] && {
44 echo "The upgarde image is corrupt."
45 return 1
46 }
47
48 return 0
49 }