259fc1e778
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>
81 lines
1.3 KiB
Bash
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
|