nvvram: no checksum error recording on WRT54G3GV2(-VF)
The CFE of the WRT54G3GV2 expects two firmware images, if one of them produces a CRC error (which is the case after you installed OpenWrt, as there is no second image), it writes one of three consecutive bytes to the flash. (Look for "Image Status : IMG2_BAD" during boot.) After the third boot with a CRC error, it stops and waits for a new firmware image. To prevent this 'noset_try_flag' must be set to 1 on boot. Tested with my own box. Signed-off-by: Niclas Koeser <nks at informatik.uni-kiel.de> SVN-Revision: 23007
This commit is contained in:
parent
4b7536d3c7
commit
a1264431fe
2 changed files with 7 additions and 1 deletions
|
@ -8,7 +8,7 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=nvram
|
PKG_NAME:=nvram
|
||||||
PKG_RELEASE:=8
|
PKG_RELEASE:=9
|
||||||
|
|
||||||
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
|
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
|
||||||
|
|
||||||
|
|
|
@ -59,6 +59,12 @@ fixup_linksys() {
|
||||||
echo "sdram_init is invaild: $(printf 0x%04x $SDRAM_INIT), force to default!"
|
echo "sdram_init is invaild: $(printf 0x%04x $SDRAM_INIT), force to default!"
|
||||||
nvram_set sdram_init 0x0009
|
nvram_set sdram_init 0x0009
|
||||||
}
|
}
|
||||||
|
# on WRT54G3GV2 set flag, so checksum errors of firmware image 2 don't stop the boot process
|
||||||
|
noset_try_flag=$(nvram get noset_try_flag)
|
||||||
|
[ "$noset_try_flag" = 0 ] && {
|
||||||
|
echo "setting noset_try_flag to 1."
|
||||||
|
nvram_set noset_try_flag 1
|
||||||
|
}
|
||||||
[ "$COMMIT" = 1 ] && {
|
[ "$COMMIT" = 1 ] && {
|
||||||
nvram_set sdram_ncdl 0x0
|
nvram_set sdram_ncdl 0x0
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue