From 9f8042dd1f611cb0226c0e13cc26d6879f137d6a Mon Sep 17 00:00:00 2001 From: Imre Kaloz Date: Wed, 19 Aug 2015 08:35:41 +0000 Subject: mvebu: add support for the Linksys boot counter (backport of r46690) The u-boot boot counter was never reset after a successful boot, which sometimes could make some variables become out of sync. This patch adds support for the boot counter and enables auto_recovery unconditionally. Signed-off-by: Jonas Gorski Signed-off-by: Rob Mosher Signed-off-by: Imre Kaloz git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@46691 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/system/mtd/src/mtd.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'package/system/mtd/src/mtd.c') diff --git a/package/system/mtd/src/mtd.c b/package/system/mtd/src/mtd.c index 741b57b480..02476306f6 100644 --- a/package/system/mtd/src/mtd.c +++ b/package/system/mtd/src/mtd.c @@ -640,6 +640,10 @@ static void usage(void) " verify |- verify (use - for stdin) to device\n" " write |- write (use - for stdin) to device\n" " jffs2write append to the jffs2 partition on the device\n"); + if (mtd_resetbc) { + fprintf(stderr, + " resetbc reset the uboot boot counter\n"); + } if (mtd_fixtrx) { fprintf(stderr, " fixtrx fix the checksum in a trx header on first boot\n"); @@ -706,6 +710,7 @@ int main (int argc, char **argv) CMD_FIXSEAMA, CMD_VERIFY, CMD_DUMP, + CMD_RESETBC, } cmd = -1; erase[0] = NULL; @@ -800,6 +805,9 @@ int main (int argc, char **argv) } else if ((strcmp(argv[0], "erase") == 0) && (argc == 2)) { cmd = CMD_ERASE; device = argv[1]; + } else if (((strcmp(argv[0], "resetbc") == 0) && (argc == 2)) && mtd_resetbc) { + cmd = CMD_RESETBC; + device = argv[1]; } else if (((strcmp(argv[0], "fixtrx") == 0) && (argc == 2)) && mtd_fixtrx) { cmd = CMD_FIXTRX; device = argv[1]; @@ -891,6 +899,10 @@ int main (int argc, char **argv) case CMD_FIXTRX: if (mtd_fixtrx) { mtd_fixtrx(device, offset); + } + case CMD_RESETBC: + if (mtd_resetbc) { + mtd_resetbc(device); } case CMD_FIXSEAMA: if (mtd_fixseama) -- cgit v1.2.3