diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-12-07 00:03:14 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-12-07 00:03:14 +0000 |
commit | e869e415b74150e3c59dff77deae803cfe6f8c55 (patch) | |
tree | 20782f2d74fca49fe92d711dd39aae073b50cae9 /target | |
parent | 2cfedd2a67eece161d10329cf0a73df83d54a540 (diff) |
Minor patch to the AR7 diag.sh to make the status LED a bit more useful. From the patch:
This setup gives us 3.5 distinguishable states:
- Solid OFF: Bootloader running, or kernel hung (timer task stalled)
- Solid ON: Kernel hung (timer task stalled)
- 5Hz blink: preinit
- Heartbeat: normal operation
Signed-off-by: oliver@opencloud.com
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9666 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/ar7/base-files/etc/diag.sh | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/target/linux/ar7/base-files/etc/diag.sh b/target/linux/ar7/base-files/etc/diag.sh index af4a1f3c91..0ce17cae89 100644 --- a/target/linux/ar7/base-files/etc/diag.sh +++ b/target/linux/ar7/base-files/etc/diag.sh @@ -1,19 +1,26 @@ #!/bin/sh # Copyright (C) 2007 OpenWrt.org -set_led() { - local led="$1" - local state="$2" - [ -d "/sys/class/leds/$led" ] && echo "$state" > "/sys/class/leds/$led/brightness" -} +# This setup gives us 3.5 distinguishable states: +# +# Solid OFF: Bootloader running, or kernel hung (timer task stalled) +# Solid ON: Kernel hung (timer task stalled) +# 5Hz blink: preinit +# Heartbeat: normal operation set_state() { - case "$1" in - preinit) - set_led status 255 - ;; - done) - set_led status 0 - ;; - esac + case "$1" in + preinit) + [ -d /sys/class/leds/status ] && { + echo timer >/sys/class/leds/status/trigger + echo 100 >/sys/class/leds/status/delay_on + echo 100 >/sys/class/leds/status/delay_off + } + ;; + done) + [ -d /sys/class/leds/status ] && { + echo heartbeat >/sys/class/leds/status/trigger + } + ;; + esac } |