diff options
author | John Crispin <john@openwrt.org> | 2015-08-17 06:16:39 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2015-08-17 06:16:39 +0000 |
commit | 9b0516c9fc993745cab983e9ada3e4b00185855c (patch) | |
tree | 9348cd6f2f60719233b22c79016bd9b75409c621 /package/base-files/files/etc | |
parent | 8e90f20bf73bb4c0ee77b414577a258ceadc8609 (diff) | |
download | upstream-9b0516c9fc993745cab983e9ada3e4b00185855c.tar.gz upstream-9b0516c9fc993745cab983e9ada3e4b00185855c.tar.bz2 upstream-9b0516c9fc993745cab983e9ada3e4b00185855c.zip |
base-files: rework reset button script to indicate factory reset
With this change we let user know 5 seconds have passed and reset button
can be released (to trigger factory reset)
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 46650
Diffstat (limited to 'package/base-files/files/etc')
-rwxr-xr-x | package/base-files/files/etc/rc.button/reset | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/package/base-files/files/etc/rc.button/reset b/package/base-files/files/etc/rc.button/reset index 3e241460ef..c6dc7cfbc0 100755 --- a/package/base-files/files/etc/rc.button/reset +++ b/package/base-files/files/etc/rc.button/reset @@ -1,20 +1,27 @@ #!/bin/sh -[ "${ACTION}" = "released" ] || exit 0 - . /lib/functions.sh -logger "$BUTTON pressed for $SEEN seconds" - -if [ "$SEEN" -lt 1 ] -then - echo "REBOOT" > /dev/console - sync - reboot -elif [ "$SEEN" -gt 5 ] -then - echo "FACTORY RESET" > /dev/console - jffs2reset -y && reboot & -fi +case "$ACTION" in +pressed) + return 5 +;; +timeout) + . /etc/diag.sh + set_state failsafe +;; +released) + if [ "$SEEN" -lt 1 ] + then + echo "REBOOT" > /dev/console + sync + reboot + elif [ "$SEEN" -gt 5 ] + then + echo "FACTORY RESET" > /dev/console + jffs2reset -y && reboot & + fi +;; +esac return 0 |