osmo-bsc: BTS dependent timeslot config.

Makes the timeslot config a little more complex. Supports configuring an Umsite
for FR only.
This commit is contained in:
Keith Whyte 2023-08-31 05:42:16 +02:00
parent 73866e0349
commit c1e043fdd2
2 changed files with 71 additions and 17 deletions

View file

@ -99,13 +99,64 @@ class rhizo_base::osmocom::common {
require => Class['rhizo_base::apt']
}
$ts0_phys_chan = "CCCH"
$ts1_phys_chan = "SDCCH8"
if $mncc_codec == "GSM" {
$phys_chan = "TCH/F"
$ts0_phys_chan = { "unknown" => "CCCH",
"1002" => "CCCH+SDCCH4",
"1020" => "CCCH+SDCCH4",
"2050M" => "CCCH",
"2050S" => "CCCH",
"UmSite" => "CCCH",
"UmSite1" => "CCCH",
"lime" => "CCCH"
}
$ts1_phys_chan = { "unknown" => "SDCCH8",
"1002" => "TCH/F_TCH/H_SDCCH8_PDCH",
"1020" => "TCH/F_TCH/H_SDCCH8_PDCH",
"2050M" => "SDCCH8",
"2050S" => "SDCCH8",
"UmSite" => "SDCCH8",
"UmSite1" => "SDCCH8",
"lime" => "TCH/F_TCH/H_SDCCH8_PDCH"
}
$ts7_phys_chan = { "unknown" => "PDCH",
"1002" => "PDCH",
"1020" => "PDCH",
"2050M" => "PDCH",
"2050S" => "PDCH",
"UmSite" => "TCH/F",
"UmSite1" => "TCH/H",
"lime" => "TCH/F_TCH/H_SDCCH8_PDCH"
}
$phys_chan_dyn = { "unknown" => "TCH/F",
"1002" => "TCH/F_TCH/H_SDCCH8_PDCH",
"1020" => "TCH/F_TCH/H_SDCCH8_PDCH",
"2050M" => "TCH/F_TCH/H_SDCCH8_PDCH",
"2050S" => "TCH/F_TCH/H_SDCCH8_PDCH",
"UmSite" => "TCH/F",
"UmSite1" => "TCH/H",
"lime" => "TCH/F_TCH/H_SDCCH8_PDCH"
}
if "AMR" in $mncc_codec {
$phys_chan = { "unknown" => "TCH/H",
"1002" => "TCH/H",
"1020" => "TCH/H",
"2050M" => "TCH/H",
"2050S" => "TCH/H",
"UmSite" => "TCH/F",
"UmSite1" => "TCH/H",
"lime" => "TCH/H"
}
} else {
$phys_chan = "TCH/H"
$phys_chan = { "unknown" => "TCH/F",
"1002" => "TCH/F",
"1020" => "TCH/F",
"2050M" => "TCH/F",
"2050S" => "TCH/F",
"UmSite" => "TCH/F",
"UmSite1" => "TCH/F",
"lime" => "TCH/F"
}
}
unless hiera('rhizo::local_osmobsc_cfg') == "1" {

View file

@ -29,11 +29,14 @@
<% end -%>
<% if bts["lte_n"] -%> si2quater neighbor-list add earfcn <%= bts["lte_n"] %> thresh-hi 4 thresh-lo 32 prio 7 qrxlv 32 meas 6
<% end -%>
<% if bts["model"] == "UmSite" -%>
codec-support fr
<% elsif bts["model"] == "UmSite1" -%>
codec-support fr amr
<% if bts["model"] == "UmSite1" -%>
amr tch-f modes 7
amr tch-f start-mode auto
<% else -%>
codec-support fr amr
amr tch-f modes 3 5 6 7
amr tch-f threshold ms 12 31 37
amr tch-f hysteresis ms 4 4 4
@ -107,34 +110,34 @@
rsl e1 tei 0
timeslot 0
<% if index == 0 -%>
phys_chan_config <%= @ts0_phys_chan %>
phys_chan_config <%= @ts0_phys_chan[bts["model"]] %>
hopping enabled 0
timeslot 1
phys_chan_config <%= @ts1_phys_chan %>
phys_chan_config <%= @ts1_phys_chan[bts["model"]] %>
<% else -%>
phys_chan_config <%= @phys_chan %>
phys_chan_config <%= @phys_chan[bts["model"]] %>
hopping enabled 0
timeslot 1
phys_chan_config <%= @phys_chan %>
phys_chan_config <%= @phys_chan[bts["model"]] %>
<% end -%>
hopping enabled 0
timeslot 2
phys_chan_config <%= @phys_chan %>
phys_chan_config <%= @phys_chan[bts["model"]] %>
hopping enabled 0
timeslot 3
phys_chan_config <%= @phys_chan %>
phys_chan_config <%= @phys_chan[bts["model"]] %>
hopping enabled 0
timeslot 4
phys_chan_config TCH/F_TCH/H_PDCH
phys_chan_config <%= @phys_chan_dyn[bts["model"]] %>
hopping enabled 0
timeslot 5
phys_chan_config TCH/F_TCH/H_PDCH
phys_chan_config <%= @phys_chan_dyn[bts["model"]] %>
hopping enabled 0
timeslot 6
phys_chan_config TCH/F_TCH/H_PDCH
phys_chan_config <%= @phys_chan_dyn[bts["model"]] %>
hopping enabled 0
timeslot 7
phys_chan_config PDCH
phys_chan_config <%= @ts7_phys_chan[bts["model"]] %>
hopping enabled 0
<% end -%>
<% end -%>