ar71xx: qihoo-c301: reset imageNtrynum after each successful boot.
Qihoo C301 has 2 flash chips of which one is used as primary and the other is used as backup. OEM U-Boot will try to boot an activeregion N with imageNstatus=0 and imageNtrynum <= imagemaxtry. If such a region is found, bootloader will try to increment imageNtrynum and boot it. This patch tries to reset imageNtrynum after each successful boot (if the boot process reaches the execution of /etc/init.d/done). root@OpenWrt:/# hexdump -C -n 128 /dev/mtdblock9 00000000 9e f3 63 91 61 63 74 69 76 65 72 65 67 69 6f 6e |..c.activeregion| 00000010 3d 31 00 69 6d 61 67 65 31 73 74 61 74 75 73 3d |=1.image1status=| 00000020 30 00 69 6d 61 67 65 32 73 74 61 74 75 73 3d 30 |0.image2status=0| 00000030 00 69 6d 61 67 65 32 74 72 79 6e 75 6d 3d 30 00 |.image2trynum=0.| 00000040 69 6d 61 67 65 6d 61 78 74 72 79 3d 33 00 69 6d |imagemaxtry=3.im| 00000050 61 67 65 31 74 72 79 6e 75 6d 3d 30 00 00 00 00 |age1trynum=0....| 00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com> SVN-Revision: 42914
This commit is contained in:
parent
13dce9817e
commit
24a0269b71
2 changed files with 9 additions and 0 deletions
|
@ -41,6 +41,9 @@ om2p-lc)
|
||||||
wzr-hp-ag300h)
|
wzr-hp-ag300h)
|
||||||
ubootenv_add_uci_config "/dev/mtd3" "0x0" "0x10000" "0x10000"
|
ubootenv_add_uci_config "/dev/mtd3" "0x0" "0x10000" "0x10000"
|
||||||
;;
|
;;
|
||||||
|
qihoo-c301)
|
||||||
|
ubootenv_add_uci_config "/dev/mtd9" "0x0" "0x10000" "0x10000"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
config_load ubootenv
|
config_load ubootenv
|
||||||
|
|
|
@ -297,6 +297,12 @@ set_state() {
|
||||||
;;
|
;;
|
||||||
done)
|
done)
|
||||||
status_led_on
|
status_led_on
|
||||||
|
case $(ar71xx_board_name) in
|
||||||
|
qihoo-c301)
|
||||||
|
local n=$(fw_printenv activeregion | cut -d = -f 2)
|
||||||
|
fw_setenv "image${n}trynum" 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue