Message ID | 1436273936-6908-7-git-send-email-guenther.kelleter@devolo.de |
---|---|
State | Superseded |
Headers | show |
Hi, see inline On 07/07/2015 14:58, Günther Kelleter wrote: > Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de> > --- > package/base-files/files/etc/init.d/led | 7 +++++++ > .../base-files/files/lib/functions/uci-defaults.sh | 20 ++++++++++++++++++++ > 2 files changed, 27 insertions(+) > > diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led > index 1a57e8a..3f45732 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 5a8809d..93997b2 100644 > --- a/package/base-files/files/lib/functions/uci-defaults.sh > +++ b/package/base-files/files/lib/functions/uci-defaults.sh > @@ -157,6 +157,26 @@ EOF > UCIDEF_LEDS_CHANGED=1 > } > > +ucidef_set_led_gpio() { the name is a bit misleading. could you change it to ucidef_set_led_trigger_gpio or similar ? John > + 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" >
diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led index 1a57e8a..3f45732 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 5a8809d..93997b2 100644 --- a/package/base-files/files/lib/functions/uci-defaults.sh +++ b/package/base-files/files/lib/functions/uci-defaults.sh @@ -157,6 +157,26 @@ EOF UCIDEF_LEDS_CHANGED=1 } +ucidef_set_led_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"
Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de> --- package/base-files/files/etc/init.d/led | 7 +++++++ .../base-files/files/lib/functions/uci-defaults.sh | 20 ++++++++++++++++++++ 2 files changed, 27 insertions(+)