[OpenWrt-Devel] [PATCH] add "preinit_regular" diag.sh set_state argument

Rafał Miłecki zajec5 at gmail.com
Sun Dec 14 17:00:44 EST 2014


This new argument is used right after starting regular preinit (which
happens if failsafe wasn't triggered). The main purpose of "preinit"
argument is to indicate that failsafe can be triggered, however we were
missing a way to inform user that we don't wait for a trigger anymore.
With this change it's clear when failsafe mode can be triggered.

Signed-off-by: Rafał Miłecki <zajec5 at gmail.com>
---
 package/base-files/files/lib/functions/leds.sh                   | 4 ++++
 package/base-files/files/lib/preinit/10_indicate_preinit         | 6 +-----
 package/base-files/files/lib/preinit/50_indicate_regular_preinit | 2 +-
 target/linux/adm5120/base-files/etc/diag.sh                      | 3 +++
 target/linux/ar7/base-files/etc/diag.sh                          | 3 +++
 target/linux/ar71xx/base-files/etc/diag.sh                       | 3 +++
 target/linux/avr32/base-files/etc/diag.sh                        | 4 ++++
 target/linux/bcm53xx/base-files/etc/diag.sh                      | 3 +++
 target/linux/brcm47xx/base-files/etc/diag.sh                     | 3 +++
 target/linux/brcm63xx/base-files/etc/diag.sh                     | 3 +++
 target/linux/cns21xx/base-files/etc/diag.sh                      | 3 +++
 target/linux/kirkwood/base-files/etc/diag.sh                     | 3 +++
 target/linux/mpc85xx/base-files/etc/diag.sh                      | 4 ++++
 target/linux/mvebu/base-files/etc/diag.sh                        | 3 +++
 target/linux/mxs/base-files/etc/diag.sh                          | 3 +++
 target/linux/oxnas/base-files/etc/diag.sh                        | 3 +++
 target/linux/ramips/base-files/etc/diag.sh                       | 3 +++
 17 files changed, 50 insertions(+), 6 deletions(-)

diff --git a/package/base-files/files/lib/functions/leds.sh b/package/base-files/files/lib/functions/leds.sh
index 743c7da..4ac8145 100644
--- a/package/base-files/files/lib/functions/leds.sh
+++ b/package/base-files/files/lib/functions/leds.sh
@@ -66,3 +66,7 @@ status_led_blink_preinit() {
 status_led_blink_failsafe() {
 	led_timer $status_led 50 50
 }
+
+status_led_blink_preinit_regular() {
+	led_timer $status_led 500 500
+}
diff --git a/package/base-files/files/lib/preinit/10_indicate_preinit b/package/base-files/files/lib/preinit/10_indicate_preinit
index 9009116..8e94df9 100644
--- a/package/base-files/files/lib/preinit/10_indicate_preinit
+++ b/package/base-files/files/lib/preinit/10_indicate_preinit
@@ -36,13 +36,9 @@ preinit_echo() {
 	echo $1
 }
 
-pi_indicate_led() {
-	set_state preinit
-}
-
 pi_indicate_preinit() {
 	preinit_net_echo "Doing OpenWrt Preinit\n"
-	pi_indicate_led
+	set_state preinit
 }
 
 boot_hook_add preinit_main preinit_ip
diff --git a/package/base-files/files/lib/preinit/50_indicate_regular_preinit b/package/base-files/files/lib/preinit/50_indicate_regular_preinit
index bc223b3..5b7523f 100644
--- a/package/base-files/files/lib/preinit/50_indicate_regular_preinit
+++ b/package/base-files/files/lib/preinit/50_indicate_regular_preinit
@@ -4,7 +4,7 @@
 
 indicate_regular_preinit() {
 	preinit_net_echo "Continuing with Regular Preinit\n"
-	pi_indicate_led
+	set_state preinit_regular
 }
 
 boot_hook_add preinit_main indicate_regular_preinit
diff --git a/target/linux/adm5120/base-files/etc/diag.sh b/target/linux/adm5120/base-files/etc/diag.sh
index f1317c5..08952bd 100755
--- a/target/linux/adm5120/base-files/etc/diag.sh
+++ b/target/linux/adm5120/base-files/etc/diag.sh
@@ -12,6 +12,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/ar7/base-files/etc/diag.sh b/target/linux/ar7/base-files/etc/diag.sh
index 37eed6a..f6548e8 100644
--- a/target/linux/ar7/base-files/etc/diag.sh
+++ b/target/linux/ar7/base-files/etc/diag.sh
@@ -29,6 +29,9 @@ set_state() {
 	failsafe)
 		status_led_set_timer 50 50
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		[ "$status_led" = "status" ] && {
 			status_led_set_heartbeat
diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh
index c022013..63e1ca6 100755
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -305,6 +305,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		case $(ar71xx_board_name) in
diff --git a/target/linux/avr32/base-files/etc/diag.sh b/target/linux/avr32/base-files/etc/diag.sh
index f7604ae..38cd189 100755
--- a/target/linux/avr32/base-files/etc/diag.sh
+++ b/target/linux/avr32/base-files/etc/diag.sh
@@ -15,6 +15,10 @@ set_state() {
 		status_led_blink_failsafe
 		;;
 
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
+
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/bcm53xx/base-files/etc/diag.sh b/target/linux/bcm53xx/base-files/etc/diag.sh
index 05ac9e8..0a8c5fb 100644
--- a/target/linux/bcm53xx/base-files/etc/diag.sh
+++ b/target/linux/bcm53xx/base-files/etc/diag.sh
@@ -33,6 +33,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/brcm47xx/base-files/etc/diag.sh b/target/linux/brcm47xx/base-files/etc/diag.sh
index 539af36..67453e6 100644
--- a/target/linux/brcm47xx/base-files/etc/diag.sh
+++ b/target/linux/brcm47xx/base-files/etc/diag.sh
@@ -31,6 +31,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh
index bbf5c0b..f6a65d1 100755
--- a/target/linux/brcm63xx/base-files/etc/diag.sh
+++ b/target/linux/brcm63xx/base-files/etc/diag.sh
@@ -12,6 +12,9 @@ set_state() {
 	failsafe)
 		status_led_set_timer 50 50
 		;;
+	preinit_regular)
+		status_led_set_timer 500 500
+		;;
 	done)
 		if [ "${status_led/power}" != "$status_led" ]; then
 			status_led_on
diff --git a/target/linux/cns21xx/base-files/etc/diag.sh b/target/linux/cns21xx/base-files/etc/diag.sh
index 292ddb7..d61f467 100755
--- a/target/linux/cns21xx/base-files/etc/diag.sh
+++ b/target/linux/cns21xx/base-files/etc/diag.sh
@@ -22,6 +22,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/kirkwood/base-files/etc/diag.sh b/target/linux/kirkwood/base-files/etc/diag.sh
index bd6bd98..b2bb583 100755
--- a/target/linux/kirkwood/base-files/etc/diag.sh
+++ b/target/linux/kirkwood/base-files/etc/diag.sh
@@ -22,6 +22,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/mpc85xx/base-files/etc/diag.sh b/target/linux/mpc85xx/base-files/etc/diag.sh
index 123a90d..1107763 100755
--- a/target/linux/mpc85xx/base-files/etc/diag.sh
+++ b/target/linux/mpc85xx/base-files/etc/diag.sh
@@ -24,6 +24,10 @@ set_state() {
 		status_led_blink_failsafe
 		;;
 
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
+
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/mvebu/base-files/etc/diag.sh b/target/linux/mvebu/base-files/etc/diag.sh
index 07570b9..adba975 100755
--- a/target/linux/mvebu/base-files/etc/diag.sh
+++ b/target/linux/mvebu/base-files/etc/diag.sh
@@ -22,6 +22,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/mxs/base-files/etc/diag.sh b/target/linux/mxs/base-files/etc/diag.sh
index 683e123..11b1f75 100644
--- a/target/linux/mxs/base-files/etc/diag.sh
+++ b/target/linux/mxs/base-files/etc/diag.sh
@@ -28,6 +28,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/oxnas/base-files/etc/diag.sh b/target/linux/oxnas/base-files/etc/diag.sh
index ba42218..5370696 100755
--- a/target/linux/oxnas/base-files/etc/diag.sh
+++ b/target/linux/oxnas/base-files/etc/diag.sh
@@ -28,6 +28,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index f50ae1f..1af64b2 100755
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -227,6 +227,9 @@ set_state() {
 	failsafe)
 		status_led_blink_failsafe
 		;;
+	preinit_regular)
+		status_led_blink_preinit_regular
+		;;
 	done)
 		status_led_on
 		;;
-- 
1.8.4.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list