aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79/nand/base-files/lib/upgrade/platform.sh
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ath79/nand/base-files/lib/upgrade/platform.sh')
-rw-r--r--target/linux/ath79/nand/base-files/lib/upgrade/platform.sh16
1 files changed, 15 insertions, 1 deletions
diff --git a/target/linux/ath79/nand/base-files/lib/upgrade/platform.sh b/target/linux/ath79/nand/base-files/lib/upgrade/platform.sh
index 15d88a361e..8d6b639b40 100644
--- a/target/linux/ath79/nand/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ath79/nand/base-files/lib/upgrade/platform.sh
@@ -7,13 +7,27 @@ platform_check_image() {
return 0
}
-RAMFS_COPY_BIN='fw_printenv fw_setenv'
+RAMFS_COPY_BIN='fw_printenv fw_setenv nandwrite'
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
+platform_do_upgrade_mikrotik_nand() {
+ CI_KERNPART=none
+ local fw_mtd=$(find_mtd_part kernel)
+ fw_mtd="${fw_mtd/block/}"
+ [ -n "$fw_mtd" ] || return
+ mtd erase kernel
+ tar xf "$1" sysupgrade-routerboard/kernel -O | nandwrite -o "$fw_mtd" -
+
+ nand_do_upgrade "$1"
+}
+
platform_do_upgrade() {
local board=$(board_name)
case "$board" in
+ mikrotik,routerboard-922uags-5hpacd)
+ platform_do_upgrade_mikrotik_nand "$1"
+ ;;
glinet,gl-ar300m-nand|\
glinet,gl-ar300m-nor)
glinet_nand_nor_do_upgrade "$1"