mvebu: add support for WRT32X (venom)
[openwrt/openwrt.git] / target / linux / mvebu / base-files / lib / upgrade / platform.sh
index a8ad602cc78b97959c79c5e1636850990b84c6ac..e4ccf9d7f29ae3e651e044d1d939bb2454b3a784 100755 (executable)
@@ -3,43 +3,21 @@
 # Copyright (C) 2016 LEDE-Project.org
 #
 
-. /lib/mvebu.sh
-
-RAMFS_COPY_DATA=/lib/mvebu.sh
+RAMFS_COPY_BIN='fw_printenv fw_setenv'
+RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
+REQUIRE_IMAGE_METADATA=1
 
 platform_check_image() {
-       local board=$(mvebu_board_name)
-       local magic_long="$(get_magic_long "$1")"
-
-       [ "$#" -gt 1 ] && return 1
-
-       case "$board" in
-       armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-xp-linksys-mamba)
-               [ "$magic_long" != "27051956" -a "$magic_long" != "73797375" ] && {
-                       echo "Invalid image type."
-                       return 1
-               }
-               return 0;
-               ;;
-       armada-388-clearfog)
-               platform_check_image_clearfog "$ARGV"
-               return $?
-               ;;
-       esac
-
-       echo "Sysupgrade is not yet supported on $board."
-       return 1
+       return 0
 }
 
 platform_do_upgrade() {
-       local board=$(mvebu_board_name)
-
-       case "$board" in
-       armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-xp-linksys-mamba)
+       case "$(board_name)" in
+       armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
                platform_do_upgrade_linksys "$ARGV"
                ;;
-       armada-388-clearfog)
-               platform_do_upgrade_clearfog "$ARGV"
+       armada-385-turris-omnia|armada-388-clearfog-base|armada-388-clearfog-pro|globalscale,espressobin|marvell,armada8040-mcbin)
+               platform_do_upgrade_sdcard "$ARGV"
                ;;
        *)
                default_do_upgrade "$ARGV"
@@ -47,21 +25,12 @@ platform_do_upgrade() {
        esac
 }
 platform_copy_config() {
-       local board=$(mvebu_board_name)
-
-       case "$board" in
-       armada-388-clearfog)
-               platform_copy_config_clearfog "$ARGV"
+       case "$(board_name)" in
+       armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
+               platform_copy_config_linksys
+               ;;
+       armada-385-turris-omnia|armada-388-clearfog-base|armada-388-clearfog-pro|globalscale,espressobin|marvell,armada8040-mcbin)
+               platform_copy_config_sdcard "$ARGV"
                ;;
        esac
 }
-
-disable_watchdog() {
-       killall watchdog
-       ( ps | grep -v 'grep' | grep '/dev/watchdog' ) && {
-               echo 'Could not disable watchdog'
-               return 1
-       }
-}
-
-append sysupgrade_pre_upgrade disable_watchdog