ipq807x: enable dual boot on EdgeCore devices

Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
John Crispin
2022-04-20 12:11:42 +02:00
parent 1ab99d50b2
commit eb0ab17f58
2 changed files with 21 additions and 7 deletions

View File

@@ -7,10 +7,8 @@ boot() {
edgecore,eap101|\
edgecore,eap102)
avail=$(fw_printenv -n upgrade_available)
[ ${avail} -eq 0 ] || {
fw_setenv bootcount 0
fw_setenv upgrade_available 0
}
[ ${avail} -eq 0 ] && fw_setenv upgrade_available 1
fw_setenv bootcount 0
;;
esac
}

View File

@@ -1,5 +1,8 @@
. /lib/functions/system.sh
RAMFS_COPY_BIN='fw_printenv fw_setenv'
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
qca_do_upgrade() {
local tar_file="$1"
@@ -80,12 +83,25 @@ platform_do_upgrade() {
tplink,ex227)
nand_upgrade_tar "$1"
;;
edgecore,eap106|\
edgecore,eap102|\
edgecore,eap101)
edgecore,eap106)
CI_UBIPART="rootfs1"
[ "$(find_mtd_chardev rootfs)" ] && CI_UBIPART="rootfs"
nand_upgrade_tar "$1"
;;
edgecore,eap101|\
edgecore,eap102)
if [ "$(find_mtd_chardev rootfs)" ]; then
CI_UBIPART="rootfs"
else
if grep -q rootfs1 /proc/cmdline; then
CI_UBIPART="rootfs2"
fw_setenv active 2 || exit 1
else
CI_UBIPART="rootfs1"
fw_setenv active 1 || exit 1
fi
fi
nand_upgrade_tar "$1"
;;
esac
}