diff options
| author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-02-18 10:37:43 +0000 | 
|---|---|---|
| committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-02-18 10:37:43 +0000 | 
| commit | d6c1dfb126fcad8e312dc58a19f0fd7a08bd006d (patch) | |
| tree | f1ee56d27f110764a2a561e558398211b4537819 | |
| parent | a0d6c55a7bd5694475d302260f308ef9e741d4c9 (diff) | |
ar7: migrate to common led helper functions
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Florian Fainelli <florian@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35659 3c298f89-4303-0410-b956-a3cf2f4a3e73
| -rw-r--r-- | target/linux/ar7/base-files/etc/diag.sh | 60 | 
1 files changed, 27 insertions, 33 deletions
| diff --git a/target/linux/ar7/base-files/etc/diag.sh b/target/linux/ar7/base-files/etc/diag.sh index 25ec89934..37eed6a1a 100644 --- a/target/linux/ar7/base-files/etc/diag.sh +++ b/target/linux/ar7/base-files/etc/diag.sh @@ -1,5 +1,5 @@  #!/bin/sh -# Copyright (C) 2007-2012 OpenWrt.org +# Copyright (C) 2007-2013 OpenWrt.org  # This setup gives us 4.5 distinguishable states:  # @@ -12,37 +12,31 @@  # (1-LED) Heartbeat:    normal operation  # (2-LED) Solid GREEN:  normal operation +. /lib/functions/leds.sh + +get_status_led() { +	[ -d "/sys/class/leds/status" ] && status_led="status" +	[ -d "/sys/class/leds/power:green" ] && status_led="power:green" +} +  set_state() { -        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 -                        :; } || [ -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) -                        [ -d /sys/class/leds/status ] && { -                                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 +	get_status_led + +	case "$1" in +	preinit) +		status_led_set_timer 100 100 +		;; +	failsafe) +		status_led_set_timer 50 50 +		;; +	done) +		[ "$status_led" = "status" ] && { +			status_led_set_heartbeat +		} +		[ "$status_led" = "power:green" ] && { +			status_led_set_on +			led_off "power:red" +		} +		;; +	esac  } | 
