Browse Source

base-files: Ensure reset only works if an overlay exists

Currently the reset script will try to run jffs2reset on boards that are
running a rw rootfs, such as ext4. This will cause jffs2reset to fail
and the board to never reboot while the LED blinks until a manual
reboot.

This commit does two different things:
1. Disables reset on boards that do not have an overlay mount
2. Disables the Blinking LED after 5 seconds if the board does not
support reset

Signed-off-by: Chris Blake <[email protected]>
Chris Blake 9 years ago
parent
commit
b745bfa6dc
1 changed files with 5 additions and 1 deletions
  1. 5 1
      package/base-files/files/etc/rc.button/reset

+ 5 - 1
package/base-files/files/etc/rc.button/reset

@@ -2,8 +2,12 @@
 
 . /lib/functions.sh
 
+OVERLAY="$( grep ' /overlay ' /proc/mounts )"
+
 case "$ACTION" in
 pressed)
+	[ -z "$OVERLAY" ] && return 0
+
 	return 5
 ;;
 timeout)
@@ -16,7 +20,7 @@ released)
 		echo "REBOOT" > /dev/console
 		sync
 		reboot
-	elif [ "$SEEN" -gt 5 ]
+	elif [ "$SEEN" -gt 5 -a -n "$OVERLAY" ]
 	then
 		echo "FACTORY RESET" > /dev/console
 		jffs2reset -y && reboot &