cdfaac16d501c33320687107e8b3b8a806be3560
[ric-plt/nodeb-rnib.git] / entities / gnb.proto
1 syntax = "proto3";
2 package entities;
3
4 message Gnb{
5         repeated ServedNRCell served_nr_cells = 1;
6 }
7
8 message ServedNRCell{
9         ServedNRCellInformation served_nr_cell_information = 1;
10         repeated NrNeighbourInformation nr_neighbour_infos = 2;
11 }
12
13 message ServedNRCellInformation{
14         uint32 nr_pci = 1;
15         string cell_id = 2;
16         string stac5g = 3;
17         string configured_stac = 4;
18         repeated string served_plmns= 5;
19         Nr.Mode nr_mode = 6;
20         message ChoiceNRMode{
21                 message FddInfo{
22                         NrFrequencyInfo ul_freq_info = 1;
23                         NrFrequencyInfo dl_freq_info = 2;
24                         NrTransmissionBandwidth ul_transmission_bandwidth = 3;
25                         NrTransmissionBandwidth dl_transmission_bandwidth = 4;
26                 }
27                 message TddInfo{
28                         NrFrequencyInfo nr_freq_info = 1;
29                         NrTransmissionBandwidth transmission_bandwidth = 2;
30                 }
31                 FddInfo fdd  = 1;
32                 TddInfo tdd  = 2;
33         }
34         ChoiceNRMode choice_nr_mode = 7;
35 }
36
37 message Nr{
38         enum Mode{
39                 UNKNOWN = 0;
40                 FDD = 1;
41                 TDD = 2;
42         }
43 }
44
45 message NrFrequencyInfo{
46         uint64 nr_ar_fcn = 1;
47         message SulInformation{
48             uint64 sul_ar_fcn = 1;
49                 NrTransmissionBandwidth sul_transmission_bandwidth = 2;
50         }
51         SulInformation sulInformation = 3;
52         repeated FrequencyBandItem frequency_bands = 4;
53 }
54
55 message FrequencyBandItem{
56         uint32 nr_frequency_band = 1;
57         repeated uint32 supported_sul_bands = 2;
58 }
59
60 message NrTransmissionBandwidth{
61         Nrscs nrscs = 1;
62         Ncnrb ncnrb= 2;
63 }
64
65 enum Nrscs {
66         UNKNOWN_NRSCS = 0;
67         SCS15 = 1;
68         SCS30 = 2;
69         SCS60 = 3;
70         SCS120 = 4;
71 }
72
73 enum Ncnrb{
74         UNKNOWN_NCNRB = 0;
75     NRB11 =1;
76         NRB18 =2;
77         NRB24 =3;
78         NRB25 =4;
79         NRB31 =5;
80         NRB32 =6;
81         NRB38 =7;
82         NRB51 =8;
83         NRB52 =9;
84         NRB65 =10;
85         NRB66 =11;
86         NRB78 =12;
87         NRB79 =13;
88         NRB93 =14;
89         NRB106 =15;
90         NRB107 =16;
91         NRB121 =17;
92         NRB132 =18;
93         NRB133 =19;
94         NRB135 =20;
95         NRB160 =21;
96         NRB162 =22;
97         NRB189 =23;
98         NRB216 =24;
99         NRB217 =25;
100         NRB245 =26;
101         NRB264 =27;
102         NRB270 =28;
103         NRB273 =29;
104 }
105
106 message NrNeighbourInformation{
107         uint32 nr_pci = 1;
108         string nr_cgi = 2;
109         Nr.Mode nr_mode = 3;
110         message ChoiceNRMode{
111                 message FddInfo{
112                         NrFrequencyInfo ular_fcn_freq_info = 1;
113                         NrFrequencyInfo dlar_fcn_freq_info = 2;
114                 }
115                 message TddInfo{
116                         NrFrequencyInfo ar_fcn_nr_freq_info = 1;
117                 }
118                 FddInfo fdd  = 1;
119                 TddInfo tdd  = 2;
120         }
121         ChoiceNRMode choice_nr_mode = 4;
122         string stac5g = 5;
123         string configured_stac = 6;
124 }