diff options
author | John Crispin <blogic@openwrt.org> | 2015-07-14 07:35:59 +0000 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2015-07-14 07:35:59 +0000 |
commit | 186154ff2c19e912e1f300365c678454cc91810d (patch) | |
tree | 367bb048cf968a3d9d10f3da24b88325866f6888 /package/base-files | |
parent | 5a388923b5f90ac65d50aedf5df2da9970e36175 (diff) | |
download | master-187ad058-186154ff2c19e912e1f300365c678454cc91810d.tar.gz master-187ad058-186154ff2c19e912e1f300365c678454cc91810d.tar.bz2 master-187ad058-186154ff2c19e912e1f300365c678454cc91810d.zip |
base-files: added option to configure the gpio led trigger in uci-defaults
Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@46341 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files')
-rwxr-xr-x | package/base-files/files/etc/init.d/led | 7 | ||||
-rw-r--r-- | package/base-files/files/lib/functions/uci-defaults.sh | 20 |
2 files changed, 27 insertions, 0 deletions
diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led index 1a57e8afd7..3f45732499 100755 --- a/package/base-files/files/etc/init.d/led +++ b/package/base-files/files/etc/init.d/led @@ -26,6 +26,8 @@ load_led() { config_get port_state $1 port_state config_get delay $1 delay "150" config_get message $1 message "" + config_get gpio $1 gpio "0" + config_get inverted $1 inverted "0" if [ "$trigger" = "rssi" ]; then # handled by rssileds userspace process @@ -80,6 +82,11 @@ load_led() { echo $delay > /sys/class/leds/${sysfs}/delay ;; + "gpio") + echo $gpio > /sys/class/leds/${sysfs}/gpio + echo $inverted > /sys/class/leds/${sysfs}/inverted + ;; + switch[0-9]*) local port_mask diff --git a/package/base-files/files/lib/functions/uci-defaults.sh b/package/base-files/files/lib/functions/uci-defaults.sh index 6577ecdcde..8ba95a22ff 100644 --- a/package/base-files/files/lib/functions/uci-defaults.sh +++ b/package/base-files/files/lib/functions/uci-defaults.sh @@ -158,6 +158,26 @@ EOF UCIDEF_LEDS_CHANGED=1 } +ucidef_set_led_trigger_gpio() { + local cfg="led_$1" + local name=$2 + local sysfs=$3 + local gpio=$4 + local inverted=$5 + + uci -q get system.$cfg && return 0 + + uci batch <<EOF +set system.$cfg='led' +set system.$cfg.name='$name' +set system.$cfg.sysfs='$sysfs' +set system.$cfg.trigger='gpio' +set system.$cfg.gpio='$gpio' +set system.$cfg.inverted='$inverted' +EOF + UCIDEF_LEDS_CHANGED=1 +} + ucidef_set_rssimon() { local dev="$1" local refresh="$2" |