qualcommax: ipq807x: Update u-boot env only when changes for Linksys MX devices

Update u-boot env variables only when changes are made.
Applies to Linksys MX4200/MX4300/MX5300/MX8500.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14720
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Paweł Owoc 2024-12-12 19:51:27 +01:00 committed by Robert Marko
parent f1f1b08db5
commit 2fc99e4f18

View File

@ -109,6 +109,8 @@ tplink_do_upgrade() {
}
linksys_mx_do_upgrade() {
local setenv_script="/tmp/fw_env_upgrade"
CI_UBIPART="rootfs"
boot_part="$(fw_printenv -n boot_part)"
if [ -n "$UPGRADE_OPT_USE_CURR_PART" ]; then
@ -118,15 +120,30 @@ linksys_mx_do_upgrade() {
fi
else
if [ "$boot_part" -eq "1" ]; then
fw_setenv boot_part 2
echo "boot_part 2" >> $setenv_script
CI_KERNPART="alt_kernel"
CI_UBIPART="alt_rootfs"
else
fw_setenv boot_part 1
echo "boot_part 1" >> $setenv_script
fi
fi
fw_setenv boot_part_ready 3
fw_setenv auto_recovery yes
boot_part_ready="$(fw_printenv -n boot_part_ready)"
if [ "$boot_part_ready" -ne "3" ]; then
echo "boot_part_ready 3" >> $setenv_script
fi
auto_recovery="$(fw_printenv -n auto_recovery)"
if [ "$auto_recovery" != "yes" ]; then
echo "auto_recovery yes" >> $setenv_script
fi
if [ -f "$setenv_script" ]; then
fw_setenv -s $setenv_script || {
echo "failed to update U-Boot environment"
return 1
}
fi
nand_do_upgrade "$1"
}