diff options
| author | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-08-04 22:56:46 +0000 | 
|---|---|---|
| committer | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-08-04 22:56:46 +0000 | 
| commit | 3070019b68ff1b0e935e738df270c673b9d3d515 (patch) | |
| tree | eeae1e4c7ea59dde6c770573cf50916dac9da443 /package/base-files/files/etc/init.d | |
| parent | 6ddc4b5e1b3a250cea96a596d5606b4094ae59d3 (diff) | |
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
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12104 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/files/etc/init.d')
| -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 000000000..7ccb150cf --- /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 +	} +}  | 
