[orion] generic: use magic_long in sysupgrade
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 4 Apr 2012 16:06:29 +0000 (16:06 +0000)
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 4 Apr 2012 16:06:29 +0000 (16:06 +0000)
Signed-off-by: Matthias Bücher <mail@maddes.net>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31200 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/orion/generic/base-files/lib/upgrade/platform.sh

index fdd26c5..9c9967e 100644 (file)
@@ -1,3 +1,7 @@
+#
+# Copyright (C) 2010-2011 OpenWrt.org
+#
+
 # use default "image" for PART_NAME
 # use default for platform_do_upgrade()
 
@@ -6,17 +10,20 @@ platform_check_image() {
 
        local hardware=`sed -n /Hardware/s/.*:.//p /proc/cpuinfo`
        local magic="$(get_magic_word "$1")"
+       local magic_long="$(get_magic_long "$1")"
 
        case "${hardware}" in
-        # hardware with padded uImage + padded rootfs
+        # hardware with a direct uImage partition
+        # image header format as described in U-Boot's include/image.h
+        # see http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=blob;f=include/image.h
         'Linksys WRT350N v2')
-               [ "${magic}" != '2705' ] && {
-                       echo "Invalid image type ${magic}."
+               [ "${magic_long}" != '27051956' ] && {
+                       echo "Invalid image type ${magic_long}."
                        return 1
                }
                return 0
                ;;
-        # Netgear WNR854T has extra header before uImage
+        # Netgear WNR854T (has uImage as file inside a JFFS2 partition)
         'Netgear WNR854T')
                [ "${magic}" != '8519' ] && {
                        echo "Invalid image type ${magic}."