summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-02-26 18:24:55 +0100
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-05-12 17:48:02 +0200
commit6ffd4d8a4de2a7c35a841a21c4b4116dfe54b754 (patch)
tree391ba29a3f98ce542fceb8c102de16a227dd9f93
parentd2ee15ef7605cb5d91e6d05af54e91df5de68452 (diff)
downloadopenwrt-6ffd4d8a4de2a7c35a841a21c4b4116dfe54b754.tar.gz
openwrt-6ffd4d8a4de2a7c35a841a21c4b4116dfe54b754.tar.bz2
openwrt-6ffd4d8a4de2a7c35a841a21c4b4116dfe54b754.zip
ar71xx: remove hard-coded folder name from Mikrotik RB upgrade
So far, specifying "BOARD_NAME := routerboard" is required by the upgrade code of Mikrotik NAND devices, as "sysupgrade-routerboard" is hardcoded in platform_do_upgrade_mikrotik_rb(). This patch replaces the latter with a grep for the name like it is already done in nand_upgrade_tar() in /lib/upgrade/nand.sh. This should enable upgrades from ar71xx to ath79 without setting BOARD_NAME for the latter. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> (backported from commit 281785d74fcc70153c0741be36ee1f9d05e74f6f)
-rwxr-xr-xtarget/linux/ar71xx/base-files/lib/upgrade/platform.sh7
1 files changed, 6 insertions, 1 deletions
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index e2bd946d29..e33b74a64e 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -773,8 +773,13 @@ platform_nand_pre_upgrade() {
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" -
;;
wi2a-ac200i)
case "$(fw_printenv -n dualPartition)" in