You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

91 lines
2.5 KiB
Bash

4 years ago
#!/bin/sh
#
# Copyright (C) 2018 devolo AG
#
. /usr/lib/lh-migration.sh
function migrate_plc() {
logger "Migrating PLC"
local lh_path="$.SystemConfig.Services"
local uci_path="plc"
# migrate compatibility settings / notches
local lh_config="$(lh_filter $lh_path.HomePlug.ActiveNotchSet)"
local compat_mode
local user_notches
case "$lh_config" in
1)
compat_mode=""
user_notches="2850-3155,3400-3500,3800-3950,4650-4850,5450-5730,6150-6160,6525-6765,8815-9040,9545-9555,10005-10100,11175-11400,11665-11675,13200-13360,13865-13875,15010-15100,15445-15455,17900-18030,21924-22000,23200-23350"
;;
2)
compat_mode=""
user_notches="3850-4000,5800-6300,7100-7600,9300-10000,11500-12100,13500-13900,15000-15800,17400-17900,18900-19100,21400-21900,25600-26100,26500-29700"
;;
3)
compat_mode=""
user_notches="26960-27410"
;;
4)
compat_mode=""
user_notches="26560-27410"
;;
5)
compat_mode=""
user_notches="14453-14453,17956-17956,20898-20898,24780-24780,26123-27905,50000-52000"
;;
6)
compat_mode=""
user_notches="6127-6176,9521-9570,11645-11694,13842-13818,15429-15478"
;;
7)
compat_mode=""
user_notches="5900-6200,7200-7450"
;;
8)
compat_mode=siso_full
user_notches=""
;;
9)
compat_mode=mimo_vdsl35b
user_notches=""
;;
*)
compat_mode=""
user_notches=""
;;
esac
logger "Using compat mode: '$compat_mode'"
logger "Using user notches: '$user_notches'"
uci set $uci_path.plc.compat_mode="$compat_mode"
uci set $uci_path.plc.user_notches="$user_notches"
# migrate NMK
local nmk_cfg="$(lh_filter $lh_path.HomePlug.Config.NMK)"
local nmk_bap="$(lh_filter $lh_path.System.Baptization.DlanFactoryNmk)"
local nmk
if [ -n "$nmk_cfg" ]; then
nmk="$nmk_cfg"
elif [ -n "$nmk_bap" ]; then
nmk="$nmk_bap"
else
nmk="HomePlugAV"
fi
# We cannot modify the PIB file here since it does not yet exist. Write it to /tmp
# so the PLC init script can use it.
logger "Using NMK: $nmk"
echo "LH_NMK=$nmk" > /tmp/lh_nmk
uci commit $uci_path
}
migrate_plc