ponmngr: configure serial number

This commit is contained in:
Rahul 2022-08-17 18:14:54 +02:00 committed by Sukru Senli
parent e654ea7788
commit 0edd8400e7
3 changed files with 32 additions and 5 deletions

View file

@ -2,12 +2,14 @@
. /lib/functions.sh
set_serial_number() {
vendor_id=$1
vssn=$2
/userfs/bin/omcicfgCmd set sn ${vendor_id}${vssn}
}
init_xpon() {
macaddr="$(fw_printenv -n ethaddr | tr -d ':' | tr 'a-z' 'A-Z')"
# For now use IOPG + last 8 digits of the base mac address as the omci serial number
/userfs/bin/omcicfgCmd set sn IOPG${macaddr:4:8}
procd_open_instance ponmgr_cfg
procd_set_param command /userfs/bin/ponmgr_cfg
procd_close_instance

View file

@ -2,6 +2,16 @@
. /lib/functions.sh
set_serial_number() {
vendor_id=$1
vssn=$2
vendor_id="$(echo $vendor_id | hexdump -e '4/1 "%02X" "\n"')"
vendor_id=${vendor_id:0:8}
bs /b/c gpon onu_sn={vendor_id=$vendor_id,vendor_specific=$vssn}
}
init_xpon() {
procd_open_instance pon_msgd
procd_set_param command bcm_msgd -c gpon

View file

@ -8,8 +8,23 @@ USE_PROCD=1
. /lib/functions.sh
include /lib/xpon
configure_serial_number() {
serial_number="$(uci -q get xpon.ani.serial_number)"
if [ ${#serial_number} -eq 12 ]; then
vendor_id="${serial_number:0:4}"
vssn="${serial_number:4:8}"
else
macaddr="$(fw_printenv -n ethaddr | tr -d ':' | tr 'a-z' 'A-Z')"
vendor_id="IOPS"
vssn="${macaddr:4:8}"
fi
set_serial_number $vendor_id $vssn
}
start_service() {
if [ "$(uci -q get xpon.ani.enable)" == "1" ]; then
configure_serial_number
init_xpon
fi
}