aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/base-files/lib/upgrade/platform.sh
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ramips/base-files/lib/upgrade/platform.sh')
-rwxr-xr-xtarget/linux/ramips/base-files/lib/upgrade/platform.sh211
1 files changed, 211 insertions, 0 deletions
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
new file mode 100755
index 0000000..0e8d619
--- /dev/null
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -0,0 +1,211 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+
+. /lib/ramips.sh
+
+PART_NAME=firmware
+RAMFS_COPY_DATA=/lib/ramips.sh
+
+platform_check_image() {
+ local board=$(ramips_board_name)
+ local magic="$(get_magic_long "$1")"
+
+ [ "$#" -gt 1 ] && return 1
+
+ case "$board" in
+ 3g150b|\
+ 3g300m|\
+ 3g-6200n|\
+ 3g-6200nl|\
+ a5-v11|\
+ ai-br100|\
+ air3gii|\
+ all0239-3g|\
+ all0256n|\
+ all5002|\
+ all5003|\
+ ar725w|\
+ asl26555|\
+ awapn2403|\
+ awm002-evb|\
+ awm003-evb|\
+ bc2|\
+ broadway|\
+ carambola|\
+ cf-wr800n|\
+ d105|\
+ dap-1350|\
+ db-wrt01|\
+ dcs-930|\
+ dcs-930l-b1|\
+ dir-300-b1|\
+ dir-300-b7|\
+ dir-320-b1|\
+ dir-600-b1|\
+ dir-600-b2|\
+ dir-615-d|\
+ dir-615-h1|\
+ dir-620-a1|\
+ dir-620-d1|\
+ dir-810l|\
+ e1700|\
+ esr-9753|\
+ f7c027|\
+ firewrt|\
+ fonera20n|\
+ freestation5|\
+ hc5*61|\
+ hg255d|\
+ hlk-rm04|\
+ hpm|\
+ ht-tm02|\
+ hw550-3g|\
+ ip2202|\
+ linkits7688|\
+ linkits7688d|\
+ m2m|\
+ m3|\
+ m4|\
+ microwrt|\
+ miniembplug|\
+ miniembwifi|\
+ miwifi-mini|\
+ mlw221|\
+ mlwg2|\
+ mofi3500-3gn|\
+ mpr-a1|\
+ mpr-a2|\
+ mr-102n|\
+ mzk-dp150n|\
+ mzk-w300nh2|\
+ nbg-419n|\
+ nw718|\
+ oy-0001|\
+ pbr-m1|\
+ psr-680w|\
+ px-4885|\
+ re6500|\
+ rp-n53|\
+ rt5350f-olinuxino|\
+ rt5350f-olinuxino-evb|\
+ rt-g32-b1|\
+ rt-n10-plus|\
+ rt-n13u|\
+ rt-n14u|\
+ rt-n15|\
+ rt-n56u|\
+ rut5xx|\
+ sap-g3200u3|\
+ sl-r7205|\
+ tew-691gr|\
+ tew-692gr|\
+ tiny-ac|\
+ ur-326n4g|\
+ ur-336un|\
+ v22rw-2x2|\
+ vocore|\
+ w150m|\
+ w306r-v20|\
+ w502u|\
+ whr-1166d|\
+ whr-300hp2|\
+ whr-600d|\
+ whr-g300n|\
+ wizfi630a|\
+ wl-330n|\
+ wl-330n3g|\
+ wl-341v3|\
+ wl-351|\
+ wli-tx4-ag300n|\
+ wmr-300|\
+ wnce2001|\
+ wr512-3gn|\
+ wr6202|\
+ wrtnode|\
+ wsr-600|\
+ wt1520|\
+ wt3020|\
+ wzr-agl300nh|\
+ x5|\
+ x8|\
+ y1|\
+ y1s|\
+ zbt-wa05|\
+ zbt-wg2626|\
+ zbt-wr8305rt|\
+ zte-q7)
+ [ "$magic" != "27051956" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ ar670w)
+ [ "$magic" != "6d000080" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ br-6475nd)
+ [ "$magic" != "43535953" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ c20i)
+ [ "$magic" != "03000000" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ cy-swr1100|\
+ dir-610-a1|\
+ dir-645|\
+ dir-860l-b1)
+ [ "$magic" != "5ea3a417" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ wsr-1166)
+ [ "$magic" != "48445230" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
+ esac
+
+ echo "Sysupgrade is not yet supported on $board."
+ return 1
+}
+
+platform_do_upgrade() {
+ local board=$(ramips_board_name)
+
+ case "$board" in
+ *)
+ default_do_upgrade "$ARGV"
+ ;;
+ esac
+}
+
+disable_watchdog() {
+ killall watchdog
+ ( ps | grep -v 'grep' | grep '/dev/watchdog' ) && {
+ echo 'Could not disable watchdog'
+ return 1
+ }
+}
+
+blink_led() {
+ . /etc/diag.sh; set_state upgrade
+}
+
+append sysupgrade_pre_upgrade disable_watchdog
+append sysupgrade_pre_upgrade blink_led