platform.sh 972 B

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