aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2015-07-14 07:35:59 +0000
committerJohn Crispin <blogic@openwrt.org>2015-07-14 07:35:59 +0000
commit186154ff2c19e912e1f300365c678454cc91810d (patch)
tree367bb048cf968a3d9d10f3da24b88325866f6888 /package/base-files
parent5a388923b5f90ac65d50aedf5df2da9970e36175 (diff)
downloadmaster-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-xpackage/base-files/files/etc/init.d/led7
-rw-r--r--package/base-files/files/lib/functions/uci-defaults.sh20
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"