aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ath79/image/mikrotik.mk1
-rw-r--r--target/linux/ath79/mikrotik/base-files/lib/upgrade/platform.sh8
2 files changed, 7 insertions, 2 deletions
diff --git a/target/linux/ath79/image/mikrotik.mk b/target/linux/ath79/image/mikrotik.mk
index a6863dc130..a89dc8c170 100644
--- a/target/linux/ath79/image/mikrotik.mk
+++ b/target/linux/ath79/image/mikrotik.mk
@@ -4,7 +4,6 @@ define Device/mikrotik_routerboard-922uags-5hpacd
$(Device/mikrotik)
SOC := qca9558
DEVICE_MODEL := RouterBOARD 922UAGS-5HPacD
- BOARD_NAME := routerboard
IMAGE/sysupgrade.bin = append-kernel | kernel2minor -s 2048 -e -c | \
sysupgrade-tar kernel=$$$$@ | append-metadata
DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct \
diff --git a/target/linux/ath79/mikrotik/base-files/lib/upgrade/platform.sh b/target/linux/ath79/mikrotik/base-files/lib/upgrade/platform.sh
index a568689536..d2e43d404f 100644
--- a/target/linux/ath79/mikrotik/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ath79/mikrotik/base-files/lib/upgrade/platform.sh
@@ -12,11 +12,17 @@ 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
+
+ local board_dir=$(tar tf "$1" | grep -m 1 '^sysupgrade-.*/$')
+ board_dir=${board_dir%/}
+ [ -n "$board_dir" ] || return
+
mtd erase kernel
- tar xf "$1" sysupgrade-routerboard/kernel -O | nandwrite -o "$fw_mtd" -
+ tar xf "$1" ${board_dir}/kernel -O | nandwrite -o "$fw_mtd" -
nand_do_upgrade "$1"
}