openwrtv4/target/linux/lantiq/base-files/etc/uci-defaults/01_led_migration

82 lines
1.3 KiB
Text
Raw Normal View History

#!/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