Commit 73c3184a authored by Lu Xu's avatar Lu Xu 👀

software/ors-amarisoft: add custom sib and drb file

parent ddbaface
......@@ -16,7 +16,7 @@
[template]
filename = instance.cfg
md5sum = acd9dd8dbe613e7101e62930a8380ef0
md5sum = 35d3d4a366c6cb64d333ca8c607b16a3
[template-ors]
filename = instance-ors.cfg
......@@ -36,7 +36,7 @@ md5sum = ab666fdfadbfc7d8a16ace38d295c883
[ru_libinstance.jinja2.cfg]
_update_hash_filename_ = ru/libinstance.jinja2.cfg
md5sum = 2dda7713832be83d94522c7abb4901f9
md5sum = fc2b8cf248958801ac4781476dc8058a
[ru_sdr_libinstance.jinja2.cfg]
_update_hash_filename_ = ru/sdr/libinstance.jinja2.cfg
......@@ -118,14 +118,42 @@ md5sum = e1c40827e30d6ddcd98be35ec8569af2
filename = config/drb_lte.jinja2.cfg
md5sum = 01eb971e2ff580da52291138495a81ca
[drb_custom_lte.jinja2.cfg]
filename = config/drb_custom_lte.jinja2.cfg
md5sum = b50455b591e9b5ce944b31d55b272809
[drb_nr.jinja2.cfg]
filename = config/drb_nr.jinja2.cfg
md5sum = 282b11d7b72b01b8325df4632d82b84d
[redirect.jinja2.asn]
filename = config/redirect.jinja2.asn
md5sum = 6ffb3702e19194bc9d2b533e0f9899f0
[sib23.jinja2.asn]
filename = config/sib23.jinja2.asn
md5sum = 959523597e29b048e45ebf58f7ea4c5b
[sib23_custom.jinja2.asn]
filename = config/sib23_custom.jinja2.asn
md5sum = e52dfe180c41a6306cb66ae9fff8c9ee
[sib4.jinja2.asn]
filename = config/sib4.jinja2.asn
md5sum = 07d28915a58a983ebd7d019ac8196462
[sib5.jinja2.asn]
filename = config/sib5.jinja2.asn
md5sum = 5d2d5bee41942771ee6671d8ee3548f6
[sib6.jinja2.asn]
filename = config/sib6.jinja2.asn
md5sum = 57d6c4cd1ae0adcb61addb3857a8b636
[sib7.jinja2.asn]
filename = config/sib7.jinja2.asn
md5sum = da2102b5ff5bf9317c348e8f97aa5db5
[mme.jinja2.cfg]
filename = config/mme.jinja2.cfg
md5sum = 25ae6b1022548183293f0ef0c54532a7
......
{%- set B = xbuildout.encode -%}
// DRB configuration for LTE cell {{ B(cell_ref) }} @ {{ B(ru_ref) }}.
// DRB configuration vary in beteen FDD and TDD modes.
{% set T_REORDERING = {'fdd': 35, 'tdd': 65} [cell.rf_mode] %}
// {{ cell.rf_mode | upper }} T_REORDERING={{ T_REORDERING }}
[
{
qci: 1,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 300,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 12,
pdcp_SN_SizeDL: 12,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 5,
},
dl_um: {
sn_FieldLength: 5,
t_Reordering: {{ T_REORDERING }},
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 2,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 750,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 150,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: {{ T_REORDERING }},
},
},
logical_channel_config: {
priority: 9,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 3,
pdcp_config: {
discardTimer: 750,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 300,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: {{ T_REORDERING }},
},
},
logical_channel_config: {
priority: 8,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 4,
pdcp_config: {
discardTimer: 750,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
t_Reordering: 3000,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: {{ T_REORDERING }},
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 10,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 5,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: {{ T_REORDERING }},
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 6,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 6,
pdcp_config: {
discardTimer: 750,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
t_Reordering: 3000,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: {{ T_REORDERING }},
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 12,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 7,
pdcp_config: {
discardTimer: 750,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 35,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 13,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 8,
pdcp_config: {
discardTimer: 750,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
t_Reordering: 3000,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: {{ T_REORDERING }},
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 14,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 9,
pdcp_config: {
discardTimer: 750,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
t_Reordering: 3000,
outOfOrderDelivery: false,
},
en_dc_split: {
type: "scg",
ul_data_threshold: 0
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: {{ T_REORDERING }},
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 15,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 3,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
}
]
This diff is collapsed.
{%- set B = xbuildout.encode -%}
/* SIB2/SIB3 for {{ cell.cell_type | upper }} cell {{ B(cell_ref) }} @ {{ B(ru_ref) }}. */
{
message c1: systemInformation: {
criticalExtensions systemInformation-r8: {
sib-TypeAndInfo {
sib2: {
radioResourceConfigCommon {
rach-ConfigCommon {
preambleInfo {
numberOfRA-Preambles n52,
preamblesGroupAConfig{
sizeOfRA-PreamblesGroupA n28,
messageSizeGroupA b56,
messagePowerOffsetGroupB dB10
}
},
powerRampingParameters {
powerRampingStep dB2,
preambleInitialReceivedTargetPower dBm-104
},
ra-SupervisionInfo {
preambleTransMax n10,
ra-ResponseWindowSize sf10,
mac-ContentionResolutionTimer sf64
},
maxHARQ-Msg3Tx 5
},
bcch-Config {
modificationPeriodCoeff n2
},
pcch-Config {
defaultPagingCycle rf64,
nB oneT
},
prach-Config {
rootSequenceIndex 0, /* patched by eNB */
prach-ConfigInfo {
prach-ConfigIndex 3, /* patched by eNB */
highSpeedFlag FALSE,
zeroCorrelationZoneConfig 12,
prach-FreqOffset 17 /* patched by eNB */
}
},
pdsch-ConfigCommon {
{% if ors %}
{%- if ors['one-watt'] %}
referenceSignalPower {{ (ru.tx_gain | int) - 54 }}, /* patched by eNB */
{%- else %}
referenceSignalPower {{ (ru.tx_gain | int) - 35 }}, /* patched by eNB */
{%- endif %}
{% else %}
referenceSignalPower -8, /* patched by eNB */
{% endif %}
p-b 1 /* patched by eNB */
},
pusch-ConfigCommon {
pusch-ConfigBasic {
n-SB 1,
hoppingMode interSubFrame,
pusch-HoppingOffset 8, /* patched by eNB */
enable64QAM FALSE /* patched by eNB */
},
ul-ReferenceSignalsPUSCH {
groupHoppingEnabled FALSE,
groupAssignmentPUSCH 0,
sequenceHoppingEnabled FALSE,
cyclicShift 0
}
},
pucch-ConfigCommon {
deltaPUCCH-Shift ds2,
nRB-CQI 4, /* patched by eNB */
nCS-AN 0,
n1PUCCH-AN 12 /* patched by eNB */
},
soundingRS-UL-ConfigCommon setup: {
srs-BandwidthConfig bw2, /* patched by eNB */
srs-SubframeConfig sc3, /* patched by eNB */
ackNackSRS-SimultaneousTransmission TRUE
},
uplinkPowerControlCommon {
p0-NominalPUSCH -85,
alpha al1,
p0-NominalPUCCH -117,
deltaFList-PUCCH {
deltaF-PUCCH-Format1 deltaF0,
deltaF-PUCCH-Format1b deltaF3,
deltaF-PUCCH-Format2 deltaF1,
deltaF-PUCCH-Format2a deltaF2,
deltaF-PUCCH-Format2b deltaF2
},
deltaPreambleMsg3 4
},
ul-CyclicPrefixLength len1
},
ue-TimersAndConstants {
t300 ms600,
t301 ms600,
t310 ms2000,
n310 n10,
t311 ms5000,
n311 n1
},
freqInfo {
additionalSpectrumEmission 1
},
timeAlignmentTimerCommon infinity
},
sib3: {
cellReselectionInfoCommon {
q-Hyst dB3
},
cellReselectionServingFreqInfo {
s-NonIntraSearch 21,
threshServingLow 4,
cellReselectionPriority 6
},
intraFreqCellReselectionInfo {
q-RxLevMin -61,
p-Max 23,
s-IntraSearch 26,
presenceAntennaPort1 TRUE,
neighCellConfig '01'B,
t-ReselectionEUTRA 1
}
}
}
}
}
}
......@@ -154,8 +154,15 @@ extra-context =
raw enb_template ${enb.jinja2.cfg:target}
raw slaplte_template ${slaplte.jinja2:target}
raw drb_lte_template ${drb_lte.jinja2.cfg:target}
raw drb_custom_lte_template ${drb_custom_lte.jinja2.cfg:target}
raw drb_nr_template ${drb_nr.jinja2.cfg:target}
raw redirect_template ${redirect.jinja2.asn:target}
raw sib23_template ${sib23.jinja2.asn:target}
raw sib23_custom_template ${sib23_custom.jinja2.asn:target}
raw sib4_template ${sib4.jinja2.asn:target}
raw sib5_template ${sib5.jinja2.asn:target}
raw sib6_template ${sib6.jinja2.asn:target}
raw sib7_template ${sib7.jinja2.asn:target}
raw ru_amarisoft_stats_template ${ru_amarisoft-stats.jinja2.py:target}
raw ru_amarisoft_rf_info_template ${ru_amarisoft-rf-info.jinja2.py:target}
raw ru_lopcomm_stats_template ${ru_lopcomm_stats.jinja2.py:target}
......
......@@ -293,6 +293,36 @@ ru_ref = {{ dumps(ru_ref ) }}
ru = {{ dumps(ru ) }}
{%- endif %}
{#- generate CELL-drb-custom.cfg and CELL-sib23-custom.asn #}
{{ part('drb-custom-config-%s' % cell_ref) }}
<= config-base
url = {{ {'lte': drb_custom_lte_template, 'nr': drb_nr_template} [cell.cell_type] }}
output = ${directory:etc}/{{B('%s-drb-custom.cfg' % cell_ref)}}
extra-context =
key cell_ref :cell_ref
key cell :cell
key ru_ref :ru_ref
key ru :ru
cell_ref = {{ dumps(cell_ref) }}
cell = {{ dumps(cell ) }}
ru_ref = {{ dumps(ru_ref ) }}
ru = {{ dumps(ru ) }}
{{ part('sib23-custom-config-%s' % cell_ref) }}
<= config-base
url = {{ sib23_custom_template }}
output = ${directory:etc}/{{B('%s-sib23-custom.asn' % cell_ref)}}
extra-context =
key cell_ref :cell_ref
key cell :cell
key ru_ref :ru_ref
key ru :ru
cell_ref = {{ dumps(cell_ref) }}
cell = {{ dumps(cell ) }}
ru_ref = {{ dumps(ru_ref ) }}
ru = {{ dumps(ru ) }}
{%- endif %}
{#- publish information about the cell (skipping synthetic) #}
{%- if icell.slave_reference %}
{{ part('ipublish-%s' % cell_ref) }}
......
......@@ -552,10 +552,18 @@ def _do_enb_with(iru_icell_func):
'%s/%s-drb.cfg' % (out, B(cell_ref)),
jctx)
j2render('drb_custom_%s.jinja2.cfg' % cell['cell_type'],
'%s/%s-drb-custom.cfg' % (out, B(cell_ref)),
jctx)
j2render('sib23.jinja2.asn',
'%s/%s-sib23.asn' % (out, B(cell_ref)),
jctx)
j2render('sib23_custom.jinja2.asn',
'%s/%s-sib23-custom.asn' % (out, B(cell_ref)),
jctx)
# ---- UE ----
......
......@@ -33,8 +33,15 @@ parts +=
ue_db.jinja2.cfg
ue.jinja2.cfg
drb_lte.jinja2.cfg
drb_custom_lte.jinja2.cfg
drb_nr.jinja2.cfg
redirect.jinja2.asn
sib23.jinja2.asn
sib23_custom.jinja2.asn
sib4.jinja2.asn
sib5.jinja2.asn
sib6.jinja2.asn
sib7.jinja2.asn
monitor-httpd-extra-conf
# copy all gadget file
gadget
......@@ -109,11 +116,30 @@ destination = ${buildout:directory}/gadget/${:_buildout_section_name_}
filename = enb.jinja2.cfg
[drb_lte.jinja2.cfg]
<= copy-config-to-instance
[drb_custom_lte.cfg]
<= copy-config-to-instance
[drb_nr.jinja2.cfg]
<= copy-config-to-instance
[redirect.jinja2.asn]
<= copy-config-to-instance
[sib23.jinja2.asn]
<= copy-config-to-instance
filename = sib23.jinja2.asn
[sib23_custom.jinja2.asn]
<= copy-config-to-instance
filename = sib23_custom.jinja2.asn
[sib4.jinja2.asn]
<= copy-config-to-instance
filename = sib4.jinja2.asn
[sib5.jinja2.asn]
<= copy-config-to-instance
filename = sib5.jinja2.asn
[sib6.jinja2.asn]
<= copy-config-to-instance
filename = sib6.jinja2.asn
[sib7.jinja2.asn]
<= copy-config-to-instance
filename = sib7.jinja2.asn
[ue_db.jinja2.cfg]
<= copy-config-to-instance
filename = ue_db.jinja2.cfg
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment