From ea8ac0999cb78399acf3af6d8eb6fe5b92d06f53 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Tue, 10 Nov 2015 00:16:37 +0000 Subject: [PATCH] kirkwood: support Linksys boot counter on EA[34]500 This is done with existing code from the WRT1900AC port. It makes sure the "auto_recovery" bootloader option is set, and resets the s_env boot counter after a successful boot. This gives users without a serial console connection some measure of safety. Signed-off-by: Claudio Leite SVN-Revision: 47433 --- package/system/mtd/src/Makefile | 1 + .../base-files/etc/init.d/linksys_recovery | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100755 target/linux/kirkwood/base-files/etc/init.d/linksys_recovery diff --git a/package/system/mtd/src/Makefile b/package/system/mtd/src/Makefile index 40a165e4e6..1e02ce94ee 100644 --- a/package/system/mtd/src/Makefile +++ b/package/system/mtd/src/Makefile @@ -11,6 +11,7 @@ obj.bcm53xx = $(obj.brcm) obj.brcm63xx = imagetag.o obj.ramips = $(obj.seama) obj.mvebu = linksys_bootcount.o +obj.kirkwood = linksys_bootcount.o ifdef FIS_SUPPORT obj += fis.o diff --git a/target/linux/kirkwood/base-files/etc/init.d/linksys_recovery b/target/linux/kirkwood/base-files/etc/init.d/linksys_recovery new file mode 100755 index 0000000000..3f1b7626bb --- /dev/null +++ b/target/linux/kirkwood/base-files/etc/init.d/linksys_recovery @@ -0,0 +1,20 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +START=97 +boot() { +. /lib/functions.sh +. /lib/kirkwood.sh + +case $(kirkwood_board_name) in + linksys-audi|linksys-viper) + # make sure auto_recovery in uboot is always on + AUTO_RECOVERY_ENA="`fw_printenv -n auto_recovery`" + if [ "$AUTO_RECOVERY_ENA" != "yes" ] ; then + fw_setenv auto_recovery yes + fi + # reset the boot counter + mtd resetbc s_env + ;; +esac +}