aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar7/base-files
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ar7/base-files')
-rw-r--r--target/linux/ar7/base-files/etc/diag.sh26
1 files changed, 20 insertions, 6 deletions
diff --git a/target/linux/ar7/base-files/etc/diag.sh b/target/linux/ar7/base-files/etc/diag.sh
index b8e4dc8740..25ec89934d 100644
--- a/target/linux/ar7/base-files/etc/diag.sh
+++ b/target/linux/ar7/base-files/etc/diag.sh
@@ -1,13 +1,16 @@
#!/bin/sh
-# Copyright (C) 2007 OpenWrt.org
+# Copyright (C) 2007-2012 OpenWrt.org
# This setup gives us 4.5 distinguishable states:
#
-# Solid OFF: Bootloader running, or kernel hung (timer task stalled)
-# Solid ON: Kernel hung (timer task stalled)
-# 5Hz blink: preinit
-# 10Hz blink: failsafe
-# Heartbeat: normal operation
+# (1-LED) Solid OFF: Bootloader running, or kernel hung (timer task stalled)
+# (1-LED) Solid ON: Kernel hung (timer task stalled)
+# (2-LED) Solid RED: Bootloader running, or kernel hung (timer task stalled)
+# (2-LED) Solid YELLOW: Kernel hung (timer task stalled)
+# 5Hz blink: preinit
+# 10Hz blink: failsafe
+# (1-LED) Heartbeat: normal operation
+# (2-LED) Solid GREEN: normal operation
set_state() {
case "$1" in
@@ -16,6 +19,10 @@ set_state() {
echo timer >/sys/class/leds/status/trigger
echo 100 >/sys/class/leds/status/delay_on
echo 100 >/sys/class/leds/status/delay_off
+ :; } || [ -d /sys/class/leds/power\:green ] && {
+ echo timer >/sys/class/leds/power\:green/trigger
+ echo 100 >/sys/class/leds/power\:green/delay_on
+ echo 100 >/sys/class/leds/power\:green/delay_off
}
;;
failsafe)
@@ -23,11 +30,18 @@ set_state() {
echo timer >/sys/class/leds/status/trigger
echo 50 >/sys/class/leds/status/delay_on
echo 50 >/sys/class/leds/status/delay_off
+ :; } || [ -d /sys/class/leds/power\:green ] && {
+ echo timer >/sys/class/leds/power\:green/trigger
+ echo 50 >/sys/class/leds/power\:green/delay_on
+ echo 50 >/sys/class/leds/power\:green/delay_off
}
;;
done)
[ -d /sys/class/leds/status ] && {
echo heartbeat >/sys/class/leds/status/trigger
+ :; } || [ -d /sys/class/leds/power\:green ] && {
+ echo default-on >/sys/class/leds/power\:green/trigger
+ echo none >/sys/class/leds/power\:red/trigger
}
;;
esac