Commit 8d91e3de authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 38f41981
...@@ -3,67 +3,6 @@ ...@@ -3,67 +3,6 @@
"$schema": "http://json-schema.org/draft-04/schema", "$schema": "http://json-schema.org/draft-04/schema",
"title": "Input Parameters", "title": "Input Parameters",
"properties": { "properties": {
"plmn_list": {
"title": "PLMN list",
"description": "List of PLMNs broadcasted by the gNodeB, at most 12 (default: 00101)",
"patternProperties": {
".*": {
"properties": {
"plmn": {
"default": "00101",
"title": "Public Land Mobile Network",
"description": "Public Land Mobile Network",
"type": "string"
},
"tac": {
"default": 100,
"title": "Tracking Area Code",
"description": "Integer (range 0 to 16777215)",
"type": "number"
},
"ranac": {
"title": "Optional integer (range 0 to 255)",
"description": "RAN Area Code",
"type": "number"
},
"reserved": {
"default": false,
"title": "Reserved",
"description": "True if the cell is reserved for operator use.",
"type": "boolean"
}
},
"type": "object"
}
},
"type": "object",
"default": {}
},
"nssai": {
"title": "AMF slices configuration",
"description": "AMF slices configuration.",
"patternProperties": {
".*": {
"properties": {
"sst": {
"default": 1,
"title": "Slice Service Type",
"description": "Integer (range 1 to 255).",
"type": "number"
},
"sd": {
"default": "0x000032",
"title": "Slice Differentiator",
"description": "Optional integer (range 0 to 0xFFFFFE)",
"type": "string"
}
},
"type": "object"
}
},
"type": "object",
"default": {}
},
"nr_handover_a3_offset": { "nr_handover_a3_offset": {
"title": "A3 offset for NR handover", "title": "A3 offset for NR handover",
"description": "RSRP gain offset between gNBs which will trigger handover", "description": "RSRP gain offset between gNBs which will trigger handover",
......
...@@ -319,21 +319,13 @@ ...@@ -319,21 +319,13 @@
cell_default: { cell_default: {
plmn_list: [ plmn_list: [
{%- if slapparameter_dict.get('plmn_list', '') %} {%- for _, plmn in slapparameter_dict.plmn_list |dictsort %}
{%- for i, k in enumerate(slapparameter_dict['plmn_list']) %}
{%- if i == 0 -%}
{ {
{%- else -%} plmn: "{{ plmn.plmn }}",
, { reserved: {{ plmn.get('reserved', false) |tojson }},
{%- endif %} attach_without_pdn: {{ plmn.get('attach_without_pdn', false) |tojson }},
plmn: "{{ slapparameter_dict['plmn_list'][k]['plmn'] }}", },
reserved: {{ str(slapparameter_dict['plmn_list'][k].get('reserved', false)).lower() }}, {%- endfor %}
attach_without_pdn: {{ str(slapparameter_dict['plmn_list'][k].get('attach_without_pdn', false)).lower() }},
}
{%- endfor -%}
{% else %}
"00101",
{% endif %}
], ],
cyclic_prefix: "normal", cyclic_prefix: "normal",
...@@ -715,68 +707,23 @@ ...@@ -715,68 +707,23 @@
ssb_period: 20, ssb_period: 20,
plmn_list: [ plmn_list: [
{%- if slapparameter_dict.get('plmn_list', '') %} {%- for _, plmn in slapparameter_dict.plmn_list_5g |dictsort %}
{%- for i, k in enumerate(slapparameter_dict['plmn_list']) %}
{%- if i == 0 -%}
{ {
{%- else -%} plmn: "{{ plmn.plmn }}",
, { tac: {{ plmn.tac }},
{%- endif %} reserved: {{ plmn.get('reserved', false) |tojson }},
plmn: "{{ slapparameter_dict['plmn_list'][k]['plmn'] }}",
tac: {{ slapparameter_dict['plmn_list'][k].get('tac', 100) }},
{%- if slapparameter_dict['plmn_list'][k].get('ranac', '') %}
ranac: {{ slapparameter_dict['plmn_list'][k]['ranac'] }},
{%- endif %}
reserved: {{ str(slapparameter_dict['plmn_list'][k].get('reserved', false)).lower() }},
nssai: [ nssai: [
{%- if slapparameter_dict.get('nssai', '') %}
{%- for j, k in enumerate(slapparameter_dict['nssai']) %}
{%- if j == 0 %}
{ {
{%- else -%} {%- for _, nssai in slapparameter_dict.get('nssai', {1: {'sst': 1}}) |dictsort %}
, { sst: {{ nssai.sst }},
{%- if nssai.get('sd') %}
sd: {{ nssai.sd }},
{%- endif %} {%- endif %}
sst: {{ slapparameter_dict['nssai'][k]['sst'] }},
{%- if slapparameter_dict['nssai'][k].get('sd', '') %}
sd: {{ slapparameter_dict['nssai'][k]['sd'] }},
{%- endif %}
}
{%- endfor -%}
{% else %}
{
sst: 1,
}, },
{% endif %} {%- endfor %}
],
}
{%- endfor -%}
{% else %}
{
plmn: "00101",
tac: 100,
reserved: false,
nssai: [
{%- if slapparameter_dict.get('nssai', '') %}
{%- for j, k in enumerate(slapparameter_dict['nssai']) %}
{%- if j == 0 %}
{
{%- else -%}
, {
{%- endif %}
sst: {{ slapparameter_dict['nssai'][k]['sst'] }},
{%- if slapparameter_dict['nssai'][k].get('sd', '') %}
sd: {{ slapparameter_dict['nssai'][k]['sd'] }},
{%- endif %}
}
{%- endfor -%}
{% else %}
{
sst: 1,
},
{% endif %}
], ],
}, },
{%- endif %} {%- endfor %}
], ],
si_window_length: 40, si_window_length: 40,
......
...@@ -155,8 +155,11 @@ ...@@ -155,8 +155,11 @@
cell_default: { cell_default: {
plmn_list: [ plmn_list: [
"00101", {
plmn: "31415",
reserved: false,
attach_without_pdn: false,
},
], ],
cyclic_prefix: "normal", cyclic_prefix: "normal",
...@@ -454,14 +457,13 @@ ...@@ -454,14 +457,13 @@
plmn_list: [ plmn_list: [
{ {
plmn: "00101", plmn: "51413",
tac: 100, tac: 123,
reserved: false, reserved: false,
nssai: [ nssai: [
{ {
sst: 1, sst: 1,
}, },
], ],
}, },
], ],
......
...@@ -32,6 +32,35 @@ ...@@ -32,6 +32,35 @@
"type": "object", "type": "object",
"default": {} "default": {}
}, },
"plmn_list": {
"title": "PLMN list (4G)",
"description": "List of PLMNs broadcasted by the eNodeB, at most 6",
"patternProperties": {
".*": {
"properties": {
"plmn": {
"title": "Public Land Mobile Network",
"description": "Public Land Mobile Network",
"type": "string"
},
"attach_without_pdn": {
"default": false,
"title": "Attach Without PDN",
"description": "Optional boolean. Indicates if PLMN supports attach without PDN connectivity.",
"type": "boolean"
},
"reserved": {
"default": false,
"title": "Reserved",
"description": "True if the cell is reserved for operator use.",
"type": "boolean"
}
},
"type": "object"
}
},
"type": "object"
},
"gnb_id": { "gnb_id": {
"title": "gNB ID", "title": "gNB ID",
"description": "gNB ID. (must set if there are NR cells)", "description": "gNB ID. (must set if there are NR cells)",
...@@ -61,23 +90,26 @@ ...@@ -61,23 +90,26 @@
"type": "object", "type": "object",
"default": {} "default": {}
}, },
"plmn_list": { "plmn_list_5g": {
"title": "PLMN list", "title": "PLMN list (5G)",
"description": "List of PLMNs broadcasted by the eNodeB, at most 6 (default: 00101)", "description": "List of PLMNs broadcasted by the gNodeB, at most 12",
"patternProperties": { "patternProperties": {
".*": { ".*": {
"properties": { "properties": {
"plmn": { "plmn": {
"default": "00101",
"title": "Public Land Mobile Network", "title": "Public Land Mobile Network",
"description": "Public Land Mobile Network", "description": "Public Land Mobile Network",
"type": "string" "type": "string"
}, },
"attach_without_pdn": { "tac": {
"default": false, "title": "Tracking Area Code",
"title": "Attach Without PDN", "description": "Integer (range 0 to 16777215)",
"description": "Optional boolean. Indicates if PLMN supports attach without PDN connectivity.", "type": "number"
"type": "boolean" },
"ranac": {
"title": "Optional integer (range 0 to 255)",
"description": "RAN Area Code",
"type": "number"
}, },
"reserved": { "reserved": {
"default": false, "default": false,
...@@ -89,6 +121,30 @@ ...@@ -89,6 +121,30 @@
"type": "object" "type": "object"
} }
}, },
"type": "object"
},
"nssai": {
"title": "AMF slices configuration",
"description": "AMF slices configuration.",
"patternProperties": {
".*": {
"properties": {
"sst": {
"default": 1,
"title": "Slice Service Type",
"description": "Integer (range 1 to 255).",
"type": "number"
},
"sd": {
"default": "0x000032",
"title": "Slice Differentiator",
"description": "Optional integer (range 0 to 0xFFFFFE)",
"type": "string"
}
},
"type": "object"
}
},
"type": "object", "type": "object",
"default": {} "default": {}
}, },
......
...@@ -77,7 +77,11 @@ ...@@ -77,7 +77,11 @@
"$ref": "instance-enb-input-schema.json#/properties/mme_list" "$ref": "instance-enb-input-schema.json#/properties/mme_list"
}, },
"plmn_list": { "plmn_list": {
"$ref": "instance-enb-input-schema.json#/properties/plmn_list" "$ref": "instance-enb-input-schema.json#/properties/plmn_list",
"description": "List of PLMNs broadcasted by the eNodeB, at most 6 (default: 00101)",
"default": {
"1": {"plmn": "00101"}
}
}, },
"lte_handover_a3_offset": { "lte_handover_a3_offset": {
"title": "A3 offset for LTE handover", "title": "A3 offset for LTE handover",
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
"root_sequence_index": 204, "root_sequence_index": 204,
"enb_id": "0x1A2D0", "enb_id": "0x1A2D0",
"gtp_addr": "127.0.1.1", "gtp_addr": "127.0.1.1",
"plmn_list": {"1": {"plmn": "00101"}},
"lte_handover_a3_offset": 6, "lte_handover_a3_offset": 6,
"lte_handover_a3_time_to_trigger": 480, "lte_handover_a3_time_to_trigger": 480,
"ncell_list": {}, "ncell_list": {},
...@@ -36,6 +37,7 @@ ...@@ -36,6 +37,7 @@
"cell_id": "0x01", "cell_id": "0x01",
"gnb_id": "0x12345", "gnb_id": "0x12345",
"gnb_id_bits": 28, "gnb_id_bits": 28,
"plmn_list": {"1": {"plmn": "00101", "tac": 100}},
"nr_handover_a3_offset": 6, "nr_handover_a3_offset": 6,
"nr_handover_time_to_trigger": 100, "nr_handover_time_to_trigger": 100,
"ncell_list": {}, "ncell_list": {},
...@@ -43,6 +45,7 @@ ...@@ -43,6 +45,7 @@
"inactivity_timer": 10000, "inactivity_timer": 10000,
"disable_sdr": false "disable_sdr": false
} %} } %}
# XXX plmn_list -> plmn_list_5g + .tac=100
{%- set ors_defaults = {'enb': ors_enb_defaults, 'gnb': ors_gnb_defaults} [enb_mode] %} {%- set ors_defaults = {'enb': ors_enb_defaults, 'gnb': ors_gnb_defaults} [enb_mode] %}
{%- for k,v in ors_defaults|dictsort %} {%- for k,v in ors_defaults|dictsort %}
......
...@@ -54,65 +54,14 @@ ...@@ -54,65 +54,14 @@
"$ref": "instance-enb-input-schema.json#/properties/amf_list" "$ref": "instance-enb-input-schema.json#/properties/amf_list"
}, },
"plmn_list": { "plmn_list": {
"title": "PLMN list", "$ref": "instance-enb-input-schema.json#/properties/plmn_list_5g",
"description": "List of PLMNs broadcasted by the gNodeB, at most 12 (default: 00101)", "description": "List of PLMNs broadcasted by the gNodeB, at most 12 (default: 00101)",
"patternProperties": { "default": {
".*": { "1": {"plmn": "00101", "tac": 100}
"properties": {
"plmn": {
"default": "00101",
"title": "Public Land Mobile Network",
"description": "Public Land Mobile Network",
"type": "string"
},
"tac": {
"default": 100,
"title": "Tracking Area Code",
"description": "Integer (range 0 to 16777215)",
"type": "number"
},
"ranac": {
"title": "Optional integer (range 0 to 255)",
"description": "RAN Area Code",
"type": "number"
},
"reserved": {
"default": false,
"title": "Reserved",
"description": "True if the cell is reserved for operator use.",
"type": "boolean"
} }
}, },
"type": "object"
}
},
"type": "object",
"default": {}
},
"nssai": { "nssai": {
"title": "AMF slices configuration", "$ref": "instance-enb-input-schema.json#/properties/nssai"
"description": "AMF slices configuration.",
"patternProperties": {
".*": {
"properties": {
"sst": {
"default": 1,
"title": "Slice Service Type",
"description": "Integer (range 1 to 255).",
"type": "number"
},
"sd": {
"default": "0x000032",
"title": "Slice Differentiator",
"description": "Optional integer (range 0 to 0xFFFFFE)",
"type": "string"
}
},
"type": "object"
}
},
"type": "object",
"default": {}
}, },
"nr_handover_a3_offset": { "nr_handover_a3_offset": {
"title": "A3 offset for NR handover", "title": "A3 offset for NR handover",
......
...@@ -426,7 +426,9 @@ def do_enb(): ...@@ -426,7 +426,9 @@ def do_enb():
}, },
"slapparameter_dict": { "slapparameter_dict": {
"enb_id": "0x10012", "enb_id": "0x10012",
"gnb_id": "0x54321" "gnb_id": "0x54321",
"plmn_list": {"1": {"plmn": "31415"}},
"plmn_list_5g": {"1": {"plmn": "51413", "tac": 123}}
} }
}""" % locals() }""" % locals()
......
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