mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-15 18:03:30 +00:00
ipq807x: xiaomi-ax3600: correctly handle boot flag from uboot
This commit is contained in:
parent
9d8a34c9ab
commit
b28e1c5402
14
target/linux/ipq807x/base-files/etc/init.d/bootcount
Executable file
14
target/linux/ipq807x/base-files/etc/init.d/bootcount
Executable file
@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
|
||||||
|
START=99
|
||||||
|
|
||||||
|
boot() {
|
||||||
|
case $(board_name) in
|
||||||
|
xiaomi,ax3600)
|
||||||
|
# OTA handling should not be used. Reset it just in case.
|
||||||
|
fw_setenv flag_ota_reboot 0
|
||||||
|
# Not strictly needed but useful to handle partition crash condition
|
||||||
|
fw_setenv flag_boot_success 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
43
target/linux/ipq807x/base-files/lib/upgrade/platform.sh
Executable file
43
target/linux/ipq807x/base-files/lib/upgrade/platform.sh
Executable file
@ -0,0 +1,43 @@
|
|||||||
|
PART_NAME=firmware
|
||||||
|
REQUIRE_IMAGE_METADATA=1
|
||||||
|
|
||||||
|
RAMFS_COPY_BIN='fw_printenv fw_setenv'
|
||||||
|
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
|
||||||
|
|
||||||
|
platform_check_image() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
platform_do_upgrade() {
|
||||||
|
case "$(board_name)" in
|
||||||
|
xiaomi,ax3600)
|
||||||
|
part_num="$(fw_printenv -n flag_boot_rootfs)"
|
||||||
|
if [ "$part_num" -eq "0" ]; then
|
||||||
|
CI_UBIPART="rootfs_1"
|
||||||
|
target_num=1
|
||||||
|
# Reset fail flag for the current partition
|
||||||
|
# With both partition set to fail, the partition 2 (bit 1)
|
||||||
|
# is loaded
|
||||||
|
fw_setenv flag_try_sys2_failed 0
|
||||||
|
else
|
||||||
|
CI_UBIPART="rootfs"
|
||||||
|
target_num=0
|
||||||
|
# Reset fail flag for the current partition
|
||||||
|
# or uboot will skip the loading of this partition
|
||||||
|
fw_setenv flag_try_sys1_failed 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Tell uboot to switch partition
|
||||||
|
fw_setenv flag_boot_rootfs $target_num
|
||||||
|
fw_setenv flag_last_success $target_num
|
||||||
|
|
||||||
|
# Reset success flag
|
||||||
|
fw_setenv flag_boot_success 0
|
||||||
|
|
||||||
|
nand_do_upgrade "$1"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
default_do_upgrade "$1"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user