Files
domenico 0cba744dde
Some checks failed
Build Kernel / Set targets (push) Has been cancelled
Build all core packages / build (malta/be) (push) Has been cancelled
Build all core packages / build (x86/64) (push) Has been cancelled
Build host tools / build-macos-latest (push) Has been cancelled
Build host tools / build-linux-buildbot (push) Has been cancelled
Build Kernel / Build Kernel with external toolchain (push) Has been cancelled
Build Kernel / Check Kernel patches (push) Has been cancelled
Build host tools / push-tools-container (push) Has been cancelled
Initial commit
2025-06-24 13:18:37 +02:00

76 lines
1.6 KiB
Bash

#!/bin/sh /etc/rc.common
# (C) 2012 Daniel Golle, Allnet GmbH <dgolle@allnet.de>
START=96
STOP=89
RSSILEDS_BIN="/usr/sbin/rssileds"
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
start_rssid() {
local name
local dev
local threshold
local refresh
local leds
config_get name $1 name
config_get dev $1 dev
config_get threshold $1 threshold
config_get refresh $1 refresh
leds="$( cur_iface=$1 ; config_foreach get_led led )"
SERVICE_PID_FILE=/var/run/rssileds-$dev.pid
service_start $RSSILEDS_BIN $dev $refresh $threshold $leds
}
stop_rssid() {
local dev
config_get dev $1 dev
SERVICE_PID_FILE=/var/run/rssileds-$dev.pid
service_stop $RSSILEDS_BIN
}
get_led() {
local name
local sysfs
local trigger
local iface
config_get sysfs $1 sysfs
config_get name $1 name "$sysfs"
config_get trigger $1 trigger "none"
config_get iface $1 iface
config_get minq $1 minq
config_get maxq $1 maxq
config_get offset $1 offset
config_get factor $1 factor
[ "$trigger" = "rssi" ] || return
[ "$iface" = "$cur_iface" ] || return
[ ! "$minq" ] || [ ! "$maxq" ] || [ ! "$offset" ] || [ ! "$factor" ] && return
echo "none" > /sys/class/leds/$sysfs/trigger
echo "$sysfs $minq $maxq $offset $factor"
}
off_led() {
local name
local sysfs
local trigger
config_get sysfs $1 sysfs
config_get name $1 name "$sysfs"
config_get trigger $1 trigger "none"
[ "$trigger" = "rssi" ] || return
echo "0" > /sys/class/leds/$sysfs/brightness
}
start() {
[ -e /sys/class/leds/ ] && [ -x "$RSSILEDS_BIN" ] && {
config_load system
config_foreach start_rssid rssid
}
}
stop() {
config_load system
config_foreach stop_rssid rssid
config_foreach off_led led
}