diff --git a/package/base-files/files/lib/upgrade/common.sh b/package/base-files/files/lib/upgrade/common.sh
index f0d0c20b900bd92dfb08f1889adad8b75123fb37..59ac7a70b4a324e12ee97a6bb1c83c551b95045a 100644
--- a/package/base-files/files/lib/upgrade/common.sh
+++ b/package/base-files/files/lib/upgrade/common.sh
@@ -147,5 +147,6 @@ do_upgrade() {
 			jffs2_copy_config
 		fi
 	}
+	[ -n "$DELAY" ] && sleep "$DELAY"
 	ask_bool 1 "Reboot" && reboot
 }
diff --git a/package/base-files/files/sbin/sysupgrade b/package/base-files/files/sbin/sysupgrade
index 7f258ee8997ad0e8574077c34628b8dc13d8cb92..432539a2f71cd4239b11b709231b23544f8ed08d 100755
--- a/package/base-files/files/sbin/sysupgrade
+++ b/package/base-files/files/sbin/sysupgrade
@@ -7,11 +7,13 @@ RAMFS_COPY_DATA=""	# extra data files
 export INTERACTIVE=0
 export VERBOSE=1
 export SAVE_CONFIG=1
+export DELAY=
 
 # parse options
 while [ -n "$1" ]; do 
 	case "$1" in
 		-i) export INTERACTIVE=1;;
+		-d) export DELAY="$2"; shift;;
 		-v) export VERBOSE="$(($VERBOSE + 1))";;
 		-q) export VERBOSE="$(($VERBOSE - 1))";;
 		-*)
@@ -34,9 +36,10 @@ export ARGC="$#"
 Usage: $0 [options] <image file or URL>
 
 Options:
-	-i	interactive mode
-	-v	more verbose
-	-q	less verbose
+	-d <delay>   add a delay before rebooting
+	-i           interactive mode
+	-q           less verbose
+	-v           more verbose
 
 EOF
 	exit 1