|
|
|
@ -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 |
|
|
|
|