summaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ipq806x/base-files/lib/upgrade/platform.sh')
-rw-r--r--target/linux/ipq806x/base-files/lib/upgrade/platform.sh20
1 files changed, 19 insertions, 1 deletions
diff --git a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
index 542b5cecde..a181f13b43 100644
--- a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
@@ -12,6 +12,14 @@ platform_check_image() {
nand_do_platform_check $board $1
return $?;
;;
+ c2600)
+ local magic_long="$(get_magic_long "$1")"
+ [ "$magic_long" != "27051956" ] && {
+ echo "Invalid image, bad magic: $magic_long"
+ return 1
+ }
+ return 0;
+ ;;
*)
return 1;
esac
@@ -29,4 +37,14 @@ platform_pre_upgrade() {
esac
}
-# use default for platform_do_upgrade()
+platform_do_upgrade() {
+ local board=$(ipq806x_board_name)
+
+ case "$board" in
+ c2600)
+ PART_NAME="os-image:rootfs"
+ MTD_CONFIG_ARGS="-s 0x200000"
+ default_do_upgrade "$ARGV"
+ ;;
+ esac
+}