2 REQUIRE_IMAGE_METADATA
=0
4 platform_check_image
() {
5 [ "$#" -gt 1 ] && return 1
7 case "$(board_name)" in
16 case "$(get_magic_word "$1")" in
22 echo "Invalid image type. Please use only .bin files"
28 cfe_jffs2_upgrade_tar
() {
30 local kernel_mtd
="$(find_mtd_index $CI_KERNPART)"
32 if [ -z "$kernel_mtd" ]; then
33 echo "$CI_KERNPART partition not found"
37 local board_dir
=$
(tar tf
$tar_file |
grep -m 1 '^sysupgrade-.*/$')
38 board_dir
=${board_dir%/}
40 local kernel_length
=$
(tar xf
$tar_file ${board_dir}/kernel
-O |
wc -c 2> /dev
/null
)
41 local rootfs_length
=$
(tar xf
$tar_file ${board_dir}/root
-O |
wc -c 2> /dev
/null
)
43 if [ "$kernel_length" = 0 ]; then
44 echo "kernel cannot be empty"
48 flash_erase
-j /dev
/mtd
${kernel_mtd} 0 0
49 tar xf
$tar_file ${board_dir}/kernel
-O | nandwrite
/dev
/mtd
${kernel_mtd} -
51 local rootfs_type
="$(identify_tar "$tar_file" ${board_dir}/root)"
53 nand_upgrade_prepare_ubi
"$rootfs_length" "$rootfs_type" "0" "0"
55 local ubidev
="$( nand_find_ubi "$CI_UBIPART" )"
57 local root_ubivol
="$(nand_find_volume $ubidev $CI_ROOTPART)"
58 tar xf
$tar_file ${board_dir}/root
-O | \
59 ubiupdatevol
/dev
/$root_ubivol -s $rootfs_length -
61 nand_do_upgrade_success
64 platform_do_upgrade
() {
65 case "$(board_name)" in
69 REQUIRE_IMAGE_METADATA
=1
70 cfe_jffs2_upgrade_tar
"$1"
73 default_do_upgrade
"$1"