diff options
author | John Crispin <john@openwrt.org> | 2008-08-04 22:56:46 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2008-08-04 22:56:46 +0000 |
commit | 72396bd614319492aeb28b3b802d073a53b896a6 (patch) | |
tree | 350486bb5c9b9d0892ed9c42e3c556b0b3296b8f /package/base-files/files/etc | |
parent | 9cda3fb0843c3ab21eb86b6b2761b31bad59912e (diff) | |
download | upstream-72396bd614319492aeb28b3b802d073a53b896a6.tar.gz upstream-72396bd614319492aeb28b3b802d073a53b896a6.tar.bz2 upstream-72396bd614319492aeb28b3b802d073a53b896a6.zip |
add uci led support - /etc/config/system can hold led info which is applied at boot - adds /sbin/led.sh to set/clear leds via a name defined in /etc/config/system
SVN-Revision: 12104
Diffstat (limited to 'package/base-files/files/etc')
-rwxr-xr-x | package/base-files/files/etc/init.d/led | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led new file mode 100755 index 0000000000..7ccb150cfa --- /dev/null +++ b/package/base-files/files/etc/init.d/led @@ -0,0 +1,45 @@ +#!/bin/sh /etc/rc.common +# (C) 2008 openwrt.org + +. /etc/functions.sh + +START=60 + +load_led() { + local name + local sysfs + local trigger + local dev + local mode + local default + + config_get name $1 name + config_get sysfs $1 sysfs + config_get trigger $1 trigger + config_get dev $1 dev + config_get mode $1 mode + config_get default $1 default + + [ -e /sys/class/leds/${sysfs}/brightness -a -n "$name" ] && { + logger "setting up led : $name" + [ -n "$default" ] && { + [ $default -eq 1 ] && + echo 1 >/sys/class/leds/${sysfs}/brightness \ + || echo 0 >/sys/class/leds/${sysfs}/brightness + } + [ -z "$trigger" ] && trigger=none + echo $trigger > /sys/class/leds/${sysfs}/trigger + [ "$trigger" == "netdev" -a -n "$dev" ] && { + [ -z "$mode" ] && mode=link + echo $dev > /sys/class/leds/${sysfs}/device_name + echo $mode > /sys/class/leds/${sysfs}/mode + } + } +} + +start() { + [ -e /sys/class/leds/ ] && { + config_load system + config_foreach load_led led + } +} |