openwrtv4/target/linux/lantiq/base-files/etc/uci-defaults/01_led_migration
Mathias Kresin 259fc1e778 lantiq: show xdsl line init status on shared dsl/internet led
On boards which don't have a distinct internet and dsl led, use the
shared LED to indicate the xdsl line state and any traffic that is
send/received via the netdev. This traffic doesn't necessarily need to
be internet traffic.

Rename the shared LED of existing configs to "dsl", to match the new
defaults. The configuration of the to be renamed LED is identical with
the new defaults.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-17 15:38:18 +02:00

81 lines
1.3 KiB
Bash

#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#
LED_OPTIONS_CHANGED=0
. /lib/functions.sh
do_led_update_sysfs()
{
local cfg=$1; shift
local tuples="$@"
local sysfs
local name
config_get sysfs $cfg sysfs
config_get name $cfg name
[ -z "$sysfs" ] && return
for tuple in $tuples; do
local old=${tuple%=*}
local new=${tuple#*=}
local new_sysfs
new_sysfs=$(echo ${sysfs} | sed "s/${old}/${new}/")
[ "$new_sysfs" = "$sysfs" ] && continue
uci set system.${cfg}.sysfs="${new_sysfs}"
LED_OPTIONS_CHANGED=1
logger -t led-migration "sysfs option of LED \"${name}\" updated to ${new_sysfs}"
done;
}
do_internet_led_rename()
{
config_load system
[ -n $(config_get led_internet name) ] || return
[ -z $(config_get led_dsl name) ] || return
uci rename system.led_internet=led_dsl
uci set system.led_dsl.name=dsl
LED_OPTIONS_CHANGED=1
logger -t led-migration "internet led renamed to dsl"
}
migrate_leds()
{
config_load system
config_foreach do_led_update_sysfs led "$@"
}
case "$(board_name)" in
ARV452CQW|\
ARV7510PW22|\
ARV7519RW22|\
ARV752DPW|\
ARV752DPW22|\
ASL56026|\
BTHOMEHUBV2B|\
BTHOMEHUBV3A|\
BTHOMEHUBV5A|\
FRTZ7360SL|\
VG3503J)
do_internet_led_rename
;;
DGN3500*)
migrate_leds "dgn3500:blue:wireless=dgn3500:green:wireless"
;;
*)
;;
esac
[ "$LED_OPTIONS_CHANGED" = "1" ] && uci commit system
exit 0