mvebu: add support for WRT32X (venom)
[openwrt/openwrt.git] / target / linux / mvebu / base-files / lib / upgrade / platform.sh
index 532f598e4f735dd50fd809f3caf3db6004fcc351..e4ccf9d7f29ae3e651e044d1d939bb2454b3a784 100755 (executable)
@@ -1,50 +1,36 @@
 #
-# Copyright (C) 2014 OpenWrt.org
+# Copyright (C) 2014-2016 OpenWrt.org
+# 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-xp-mamba )
-               [ "$magic_long" != "27051956" ] && {
-                       echo "Invalid image type."
-                       return 1
-               }
-               return 0;
-               ;;
-       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-xp-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-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"
                ;;
        esac
 }
-
-disable_watchdog() {
-       killall watchdog
-       ( ps | grep -v 'grep' | grep '/dev/watchdog' ) && {
-               echo 'Could not disable watchdog'
-               return 1
-       }
+platform_copy_config() {
+       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
 }
-
-append sysupgrade_pre_upgrade disable_watchdog