ramips: force ZyXEL NR7101 to boot from "Kernel" partition
authorBjørn Mork <bjorn@mork.no>
Fri, 29 Apr 2022 14:38:27 +0000 (16:38 +0200)
committerChristian Lamparter <chunkeey@gmail.com>
Fri, 24 Jun 2022 22:05:21 +0000 (00:05 +0200)
Make sure BootingFlag points to the system partition we install to.

The BootingFlag variable selects which system partition the system
boots from (0 => "Kernel", 1 => "Kernel2"). OpenWrt does not yet have
device specific support for this dual image scheme, and can therefore
only boot from "Kernel".

This has not been an issue until now, since all known OEM firmware
versions have ignored "Kernel2" - leaving the BootingFlag fixed at 0.
But the newest OEM firmware has a new upgrade procedure, installing
to the "inactive" system partition and setting BootingFlag accordingly.

This workaround is needed until the dual image scheme is fully
supported.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit 79112e7d4758cc79dea506ffebdf40e00d94fa06)

target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh

index 407611a6a2097da46fa278db5ed82d7ea70ddc80..e12eb3ede9b5c0ff3f5b216a69ee007a0e56c857 100755 (executable)
@@ -113,6 +113,7 @@ platform_do_upgrade() {
        zyxel,nr7101)
                fw_setenv CheckBypass 0
                fw_setenv Image1Stable 0
+               [ "$(fw_printenv -n BootingFlag)" = "0" ] || fw_setenv BootingFlag 0
                CI_KERNPART="Kernel"
                nand_do_upgrade "$1"
                ;;