aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
authorRobert Marko <robimarko@gmail.com>2021-09-20 19:13:43 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2021-11-28 17:17:22 +0100
commitf2c4064ecb76bca69d4ce3fbc52209992f2334dc (patch)
tree9d11db89669c79267d768ec9056f8d121c4fb48a /package/base-files
parent1fbc9c5e4dea7311236c8f74d6093bc968a710da (diff)
downloadupstream-f2c4064ecb76bca69d4ce3fbc52209992f2334dc.tar.gz
upstream-f2c4064ecb76bca69d4ce3fbc52209992f2334dc.tar.bz2
upstream-f2c4064ecb76bca69d4ce3fbc52209992f2334dc.zip
base-files: dont always create kernel UBI volume
Currently nand_upgrade_tar() will pass the kernel length to nand_upgrade_prepare_ubi() in all cases except for when the kernel is to be installed in a separate partition as a binary with the MTD tool. While this is fine for almost all cases newer MikroTik NAND devices like hAP ac3 require the kernel to be installed as a UBIFS packed UBI volume in its own partition. So, since we have a custom recipe to use ubiformat to flash the kernel in its partition it makes no sense for sysupgrade to also install the kernel as a UBI volume in the "ubi" partition as it only wastes space and will never be used. So, simply check whether CI_KERNPART is set to "none" and if so unset the "has_kernel" variable which will in turn prevent the kernel length from being passed on and then the kernel UBI volume wont be created for no usefull purpose. The ath79 MikroTik NAND target has been setting CI_KERNPART to "none" for a while now altough that was not preventing the kernel to be installed as UBI volume as well. Signed-off-by: Robert Marko <robimarko@gmail.com>
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/files/lib/upgrade/nand.sh1
1 files changed, 1 insertions, 0 deletions
diff --git a/package/base-files/files/lib/upgrade/nand.sh b/package/base-files/files/lib/upgrade/nand.sh
index faeb3d6fc1..9b29266479 100644
--- a/package/base-files/files/lib/upgrade/nand.sh
+++ b/package/base-files/files/lib/upgrade/nand.sh
@@ -296,6 +296,7 @@ nand_upgrade_tar() {
tar xf "$tar_file" ${board_dir}/kernel -O | mtd write - $CI_KERNPART
}
[ "$kernel_length" = 0 -o ! -z "$kernel_mtd" ] && has_kernel=
+ [ "$CI_KERNPART" = "none" ] && has_kernel=
nand_upgrade_prepare_ubi "$rootfs_length" "$rootfs_type" "${has_kernel:+$kernel_length}" "$has_env"