Merge "[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-437] Establishing communication betwee...
[o-du/l2.git] / src / codec_utils / RRC / UplinkConfig.c
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "NR-RRC-Definitions"
4  *      found in "./22April22_Paging/rrc_15.3_asn.asn1"
5  *      `asn1c -D ./22April22_Paging -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #include "UplinkConfig.h"
9
10 #include "BWP-UplinkDedicated.h"
11 #include "BWP-Uplink.h"
12 #include "PUSCH-ServingCellConfig.h"
13 #include "SRS-CarrierSwitching.h"
14 #include "SCS-SpecificCarrier.h"
15 static int
16 memb_uplinkChannelBW_PerSCS_List_constraint_15(const asn_TYPE_descriptor_t *td, const void *sptr,
17                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
18         size_t size;
19         
20         if(!sptr) {
21                 ASN__CTFAIL(app_key, td, sptr,
22                         "%s: value not given (%s:%d)",
23                         td->name, __FILE__, __LINE__);
24                 return -1;
25         }
26         
27         /* Determine the number of elements */
28         size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
29         
30         if((size >= 1 && size <= 5)) {
31                 /* Perform validation of the inner elements */
32                 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
33         } else {
34                 ASN__CTFAIL(app_key, td, sptr,
35                         "%s: constraint failed (%s:%d)",
36                         td->name, __FILE__, __LINE__);
37                 return -1;
38         }
39 }
40
41 static int
42 memb_uplinkBWP_ToReleaseList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
43                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
44         size_t size;
45         
46         if(!sptr) {
47                 ASN__CTFAIL(app_key, td, sptr,
48                         "%s: value not given (%s:%d)",
49                         td->name, __FILE__, __LINE__);
50                 return -1;
51         }
52         
53         /* Determine the number of elements */
54         size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
55         
56         if((size >= 1 && size <= 4)) {
57                 /* Perform validation of the inner elements */
58                 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
59         } else {
60                 ASN__CTFAIL(app_key, td, sptr,
61                         "%s: constraint failed (%s:%d)",
62                         td->name, __FILE__, __LINE__);
63                 return -1;
64         }
65 }
66
67 static int
68 memb_uplinkBWP_ToAddModList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
69                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
70         size_t size;
71         
72         if(!sptr) {
73                 ASN__CTFAIL(app_key, td, sptr,
74                         "%s: value not given (%s:%d)",
75                         td->name, __FILE__, __LINE__);
76                 return -1;
77         }
78         
79         /* Determine the number of elements */
80         size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
81         
82         if((size >= 1 && size <= 4)) {
83                 /* Perform validation of the inner elements */
84                 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
85         } else {
86                 ASN__CTFAIL(app_key, td, sptr,
87                         "%s: constraint failed (%s:%d)",
88                         td->name, __FILE__, __LINE__);
89                 return -1;
90         }
91 }
92
93 static asn_oer_constraints_t asn_OER_type_uplinkBWP_ToReleaseList_constr_3 CC_NOTUSED = {
94         { 0, 0 },
95         -1      /* (SIZE(1..4)) */};
96 static asn_per_constraints_t asn_PER_type_uplinkBWP_ToReleaseList_constr_3 CC_NOTUSED = {
97         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
98         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
99         0, 0    /* No PER value map */
100 };
101 static asn_oer_constraints_t asn_OER_type_uplinkBWP_ToAddModList_constr_5 CC_NOTUSED = {
102         { 0, 0 },
103         -1      /* (SIZE(1..4)) */};
104 static asn_per_constraints_t asn_PER_type_uplinkBWP_ToAddModList_constr_5 CC_NOTUSED = {
105         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
106         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
107         0, 0    /* No PER value map */
108 };
109 static asn_oer_constraints_t asn_OER_type_pusch_ServingCellConfig_constr_8 CC_NOTUSED = {
110         { 0, 0 },
111         -1};
112 static asn_per_constraints_t asn_PER_type_pusch_ServingCellConfig_constr_8 CC_NOTUSED = {
113         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
114         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
115         0, 0    /* No PER value map */
116 };
117 static asn_oer_constraints_t asn_OER_type_carrierSwitching_constr_11 CC_NOTUSED = {
118         { 0, 0 },
119         -1};
120 static asn_per_constraints_t asn_PER_type_carrierSwitching_constr_11 CC_NOTUSED = {
121         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
122         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
123         0, 0    /* No PER value map */
124 };
125 static asn_oer_constraints_t asn_OER_type_uplinkChannelBW_PerSCS_List_constr_17 CC_NOTUSED = {
126         { 0, 0 },
127         -1      /* (SIZE(1..5)) */};
128 static asn_per_constraints_t asn_PER_type_uplinkChannelBW_PerSCS_List_constr_17 CC_NOTUSED = {
129         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
130         { APC_CONSTRAINED,       3,  3,  1,  5 }        /* (SIZE(1..5)) */,
131         0, 0    /* No PER value map */
132 };
133 static asn_oer_constraints_t asn_OER_memb_uplinkChannelBW_PerSCS_List_constr_17 CC_NOTUSED = {
134         { 0, 0 },
135         -1      /* (SIZE(1..5)) */};
136 static asn_per_constraints_t asn_PER_memb_uplinkChannelBW_PerSCS_List_constr_17 CC_NOTUSED = {
137         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
138         { APC_CONSTRAINED,       3,  3,  1,  5 }        /* (SIZE(1..5)) */,
139         0, 0    /* No PER value map */
140 };
141 static asn_oer_constraints_t asn_OER_memb_uplinkBWP_ToReleaseList_constr_3 CC_NOTUSED = {
142         { 0, 0 },
143         -1      /* (SIZE(1..4)) */};
144 static asn_per_constraints_t asn_PER_memb_uplinkBWP_ToReleaseList_constr_3 CC_NOTUSED = {
145         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
146         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
147         0, 0    /* No PER value map */
148 };
149 static asn_oer_constraints_t asn_OER_memb_uplinkBWP_ToAddModList_constr_5 CC_NOTUSED = {
150         { 0, 0 },
151         -1      /* (SIZE(1..4)) */};
152 static asn_per_constraints_t asn_PER_memb_uplinkBWP_ToAddModList_constr_5 CC_NOTUSED = {
153         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
154         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
155         0, 0    /* No PER value map */
156 };
157 static asn_TYPE_member_t asn_MBR_uplinkBWP_ToReleaseList_3[] = {
158         { ATF_POINTER, 0, 0,
159                 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
160                 0,
161                 &asn_DEF_BWP_Id,
162                 0,
163                 { 0, 0, 0 },
164                 0, 0, /* No default value */
165                 ""
166                 },
167 };
168 static const ber_tlv_tag_t asn_DEF_uplinkBWP_ToReleaseList_tags_3[] = {
169         (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
170         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
171 };
172 static asn_SET_OF_specifics_t asn_SPC_uplinkBWP_ToReleaseList_specs_3 = {
173         sizeof(struct UplinkConfig__uplinkBWP_ToReleaseList),
174         offsetof(struct UplinkConfig__uplinkBWP_ToReleaseList, _asn_ctx),
175         0,      /* XER encoding is XMLDelimitedItemList */
176 };
177 static /* Use -fall-defs-global to expose */
178 asn_TYPE_descriptor_t asn_DEF_uplinkBWP_ToReleaseList_3 = {
179         "uplinkBWP-ToReleaseList",
180         "uplinkBWP-ToReleaseList",
181         &asn_OP_SEQUENCE_OF,
182         asn_DEF_uplinkBWP_ToReleaseList_tags_3,
183         sizeof(asn_DEF_uplinkBWP_ToReleaseList_tags_3)
184                 /sizeof(asn_DEF_uplinkBWP_ToReleaseList_tags_3[0]) - 1, /* 1 */
185         asn_DEF_uplinkBWP_ToReleaseList_tags_3, /* Same as above */
186         sizeof(asn_DEF_uplinkBWP_ToReleaseList_tags_3)
187                 /sizeof(asn_DEF_uplinkBWP_ToReleaseList_tags_3[0]), /* 2 */
188         { &asn_OER_type_uplinkBWP_ToReleaseList_constr_3, &asn_PER_type_uplinkBWP_ToReleaseList_constr_3, SEQUENCE_OF_constraint },
189         asn_MBR_uplinkBWP_ToReleaseList_3,
190         1,      /* Single element */
191         &asn_SPC_uplinkBWP_ToReleaseList_specs_3        /* Additional specs */
192 };
193
194 static asn_TYPE_member_t asn_MBR_uplinkBWP_ToAddModList_5[] = {
195         { ATF_POINTER, 0, 0,
196                 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
197                 0,
198                 &asn_DEF_BWP_Uplink,
199                 0,
200                 { 0, 0, 0 },
201                 0, 0, /* No default value */
202                 ""
203                 },
204 };
205 static const ber_tlv_tag_t asn_DEF_uplinkBWP_ToAddModList_tags_5[] = {
206         (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
207         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
208 };
209 static asn_SET_OF_specifics_t asn_SPC_uplinkBWP_ToAddModList_specs_5 = {
210         sizeof(struct UplinkConfig__uplinkBWP_ToAddModList),
211         offsetof(struct UplinkConfig__uplinkBWP_ToAddModList, _asn_ctx),
212         0,      /* XER encoding is XMLDelimitedItemList */
213 };
214 static /* Use -fall-defs-global to expose */
215 asn_TYPE_descriptor_t asn_DEF_uplinkBWP_ToAddModList_5 = {
216         "uplinkBWP-ToAddModList",
217         "uplinkBWP-ToAddModList",
218         &asn_OP_SEQUENCE_OF,
219         asn_DEF_uplinkBWP_ToAddModList_tags_5,
220         sizeof(asn_DEF_uplinkBWP_ToAddModList_tags_5)
221                 /sizeof(asn_DEF_uplinkBWP_ToAddModList_tags_5[0]) - 1, /* 1 */
222         asn_DEF_uplinkBWP_ToAddModList_tags_5,  /* Same as above */
223         sizeof(asn_DEF_uplinkBWP_ToAddModList_tags_5)
224                 /sizeof(asn_DEF_uplinkBWP_ToAddModList_tags_5[0]), /* 2 */
225         { &asn_OER_type_uplinkBWP_ToAddModList_constr_5, &asn_PER_type_uplinkBWP_ToAddModList_constr_5, SEQUENCE_OF_constraint },
226         asn_MBR_uplinkBWP_ToAddModList_5,
227         1,      /* Single element */
228         &asn_SPC_uplinkBWP_ToAddModList_specs_5 /* Additional specs */
229 };
230
231 static asn_TYPE_member_t asn_MBR_pusch_ServingCellConfig_8[] = {
232         { ATF_NOFLAGS, 0, offsetof(struct UplinkConfig__pusch_ServingCellConfig, choice.release),
233                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
234                 -1,     /* IMPLICIT tag at current level */
235                 &asn_DEF_NULL,
236                 0,
237                 { 0, 0, 0 },
238                 0, 0, /* No default value */
239                 "release"
240                 },
241         { ATF_POINTER, 0, offsetof(struct UplinkConfig__pusch_ServingCellConfig, choice.setup),
242                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
243                 -1,     /* IMPLICIT tag at current level */
244                 &asn_DEF_PUSCH_ServingCellConfig,
245                 0,
246                 { 0, 0, 0 },
247                 0, 0, /* No default value */
248                 "setup"
249                 },
250 };
251 static const asn_TYPE_tag2member_t asn_MAP_pusch_ServingCellConfig_tag2el_8[] = {
252     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
253     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
254 };
255 static asn_CHOICE_specifics_t asn_SPC_pusch_ServingCellConfig_specs_8 = {
256         sizeof(struct UplinkConfig__pusch_ServingCellConfig),
257         offsetof(struct UplinkConfig__pusch_ServingCellConfig, _asn_ctx),
258         offsetof(struct UplinkConfig__pusch_ServingCellConfig, present),
259         sizeof(((struct UplinkConfig__pusch_ServingCellConfig *)0)->present),
260         asn_MAP_pusch_ServingCellConfig_tag2el_8,
261         2,      /* Count of tags in the map */
262         0, 0,
263         -1      /* Extensions start */
264 };
265 static /* Use -fall-defs-global to expose */
266 asn_TYPE_descriptor_t asn_DEF_pusch_ServingCellConfig_8 = {
267         "pusch-ServingCellConfig",
268         "pusch-ServingCellConfig",
269         &asn_OP_CHOICE,
270         0,      /* No effective tags (pointer) */
271         0,      /* No effective tags (count) */
272         0,      /* No tags (pointer) */
273         0,      /* No tags (count) */
274         { &asn_OER_type_pusch_ServingCellConfig_constr_8, &asn_PER_type_pusch_ServingCellConfig_constr_8, CHOICE_constraint },
275         asn_MBR_pusch_ServingCellConfig_8,
276         2,      /* Elements count */
277         &asn_SPC_pusch_ServingCellConfig_specs_8        /* Additional specs */
278 };
279
280 static asn_TYPE_member_t asn_MBR_carrierSwitching_11[] = {
281         { ATF_NOFLAGS, 0, offsetof(struct UplinkConfig__carrierSwitching, choice.release),
282                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
283                 -1,     /* IMPLICIT tag at current level */
284                 &asn_DEF_NULL,
285                 0,
286                 { 0, 0, 0 },
287                 0, 0, /* No default value */
288                 "release"
289                 },
290         { ATF_POINTER, 0, offsetof(struct UplinkConfig__carrierSwitching, choice.setup),
291                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
292                 -1,     /* IMPLICIT tag at current level */
293                 &asn_DEF_SRS_CarrierSwitching,
294                 0,
295                 { 0, 0, 0 },
296                 0, 0, /* No default value */
297                 "setup"
298                 },
299 };
300 static const asn_TYPE_tag2member_t asn_MAP_carrierSwitching_tag2el_11[] = {
301     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
302     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
303 };
304 static asn_CHOICE_specifics_t asn_SPC_carrierSwitching_specs_11 = {
305         sizeof(struct UplinkConfig__carrierSwitching),
306         offsetof(struct UplinkConfig__carrierSwitching, _asn_ctx),
307         offsetof(struct UplinkConfig__carrierSwitching, present),
308         sizeof(((struct UplinkConfig__carrierSwitching *)0)->present),
309         asn_MAP_carrierSwitching_tag2el_11,
310         2,      /* Count of tags in the map */
311         0, 0,
312         -1      /* Extensions start */
313 };
314 static /* Use -fall-defs-global to expose */
315 asn_TYPE_descriptor_t asn_DEF_carrierSwitching_11 = {
316         "carrierSwitching",
317         "carrierSwitching",
318         &asn_OP_CHOICE,
319         0,      /* No effective tags (pointer) */
320         0,      /* No effective tags (count) */
321         0,      /* No tags (pointer) */
322         0,      /* No tags (count) */
323         { &asn_OER_type_carrierSwitching_constr_11, &asn_PER_type_carrierSwitching_constr_11, CHOICE_constraint },
324         asn_MBR_carrierSwitching_11,
325         2,      /* Elements count */
326         &asn_SPC_carrierSwitching_specs_11      /* Additional specs */
327 };
328
329 static asn_TYPE_member_t asn_MBR_uplinkChannelBW_PerSCS_List_17[] = {
330         { ATF_POINTER, 0, 0,
331                 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
332                 0,
333                 &asn_DEF_SCS_SpecificCarrier,
334                 0,
335                 { 0, 0, 0 },
336                 0, 0, /* No default value */
337                 ""
338                 },
339 };
340 static const ber_tlv_tag_t asn_DEF_uplinkChannelBW_PerSCS_List_tags_17[] = {
341         (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
342         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
343 };
344 static asn_SET_OF_specifics_t asn_SPC_uplinkChannelBW_PerSCS_List_specs_17 = {
345         sizeof(struct UplinkConfig__ext1__uplinkChannelBW_PerSCS_List),
346         offsetof(struct UplinkConfig__ext1__uplinkChannelBW_PerSCS_List, _asn_ctx),
347         0,      /* XER encoding is XMLDelimitedItemList */
348 };
349 static /* Use -fall-defs-global to expose */
350 asn_TYPE_descriptor_t asn_DEF_uplinkChannelBW_PerSCS_List_17 = {
351         "uplinkChannelBW-PerSCS-List",
352         "uplinkChannelBW-PerSCS-List",
353         &asn_OP_SEQUENCE_OF,
354         asn_DEF_uplinkChannelBW_PerSCS_List_tags_17,
355         sizeof(asn_DEF_uplinkChannelBW_PerSCS_List_tags_17)
356                 /sizeof(asn_DEF_uplinkChannelBW_PerSCS_List_tags_17[0]) - 1, /* 1 */
357         asn_DEF_uplinkChannelBW_PerSCS_List_tags_17,    /* Same as above */
358         sizeof(asn_DEF_uplinkChannelBW_PerSCS_List_tags_17)
359                 /sizeof(asn_DEF_uplinkChannelBW_PerSCS_List_tags_17[0]), /* 2 */
360         { &asn_OER_type_uplinkChannelBW_PerSCS_List_constr_17, &asn_PER_type_uplinkChannelBW_PerSCS_List_constr_17, SEQUENCE_OF_constraint },
361         asn_MBR_uplinkChannelBW_PerSCS_List_17,
362         1,      /* Single element */
363         &asn_SPC_uplinkChannelBW_PerSCS_List_specs_17   /* Additional specs */
364 };
365
366 static asn_TYPE_member_t asn_MBR_ext1_15[] = {
367         { ATF_POINTER, 2, offsetof(struct UplinkConfig__ext1, powerBoostPi2BPSK),
368                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
369                 -1,     /* IMPLICIT tag at current level */
370                 &asn_DEF_BOOLEAN,
371                 0,
372                 { 0, 0, 0 },
373                 0, 0, /* No default value */
374                 "powerBoostPi2BPSK"
375                 },
376         { ATF_POINTER, 1, offsetof(struct UplinkConfig__ext1, uplinkChannelBW_PerSCS_List),
377                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
378                 0,
379                 &asn_DEF_uplinkChannelBW_PerSCS_List_17,
380                 0,
381                 { &asn_OER_memb_uplinkChannelBW_PerSCS_List_constr_17, &asn_PER_memb_uplinkChannelBW_PerSCS_List_constr_17,  memb_uplinkChannelBW_PerSCS_List_constraint_15 },
382                 0, 0, /* No default value */
383                 "uplinkChannelBW-PerSCS-List"
384                 },
385 };
386 static const int asn_MAP_ext1_oms_15[] = { 0, 1 };
387 static const ber_tlv_tag_t asn_DEF_ext1_tags_15[] = {
388         (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
389         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
390 };
391 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_15[] = {
392     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* powerBoostPi2BPSK */
393     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* uplinkChannelBW-PerSCS-List */
394 };
395 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_15 = {
396         sizeof(struct UplinkConfig__ext1),
397         offsetof(struct UplinkConfig__ext1, _asn_ctx),
398         asn_MAP_ext1_tag2el_15,
399         2,      /* Count of tags in the map */
400         asn_MAP_ext1_oms_15,    /* Optional members */
401         2, 0,   /* Root/Additions */
402         -1,     /* First extension addition */
403 };
404 static /* Use -fall-defs-global to expose */
405 asn_TYPE_descriptor_t asn_DEF_ext1_15 = {
406         "ext1",
407         "ext1",
408         &asn_OP_SEQUENCE,
409         asn_DEF_ext1_tags_15,
410         sizeof(asn_DEF_ext1_tags_15)
411                 /sizeof(asn_DEF_ext1_tags_15[0]) - 1, /* 1 */
412         asn_DEF_ext1_tags_15,   /* Same as above */
413         sizeof(asn_DEF_ext1_tags_15)
414                 /sizeof(asn_DEF_ext1_tags_15[0]), /* 2 */
415         { 0, 0, SEQUENCE_constraint },
416         asn_MBR_ext1_15,
417         2,      /* Elements count */
418         &asn_SPC_ext1_specs_15  /* Additional specs */
419 };
420
421 asn_TYPE_member_t asn_MBR_UplinkConfig_1[] = {
422         { ATF_POINTER, 7, offsetof(struct UplinkConfig, initialUplinkBWP),
423                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
424                 -1,     /* IMPLICIT tag at current level */
425                 &asn_DEF_BWP_UplinkDedicated,
426                 0,
427                 { 0, 0, 0 },
428                 0, 0, /* No default value */
429                 "initialUplinkBWP"
430                 },
431         { ATF_POINTER, 6, offsetof(struct UplinkConfig, uplinkBWP_ToReleaseList),
432                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
433                 0,
434                 &asn_DEF_uplinkBWP_ToReleaseList_3,
435                 0,
436                 { &asn_OER_memb_uplinkBWP_ToReleaseList_constr_3, &asn_PER_memb_uplinkBWP_ToReleaseList_constr_3,  memb_uplinkBWP_ToReleaseList_constraint_1 },
437                 0, 0, /* No default value */
438                 "uplinkBWP-ToReleaseList"
439                 },
440         { ATF_POINTER, 5, offsetof(struct UplinkConfig, uplinkBWP_ToAddModList),
441                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
442                 0,
443                 &asn_DEF_uplinkBWP_ToAddModList_5,
444                 0,
445                 { &asn_OER_memb_uplinkBWP_ToAddModList_constr_5, &asn_PER_memb_uplinkBWP_ToAddModList_constr_5,  memb_uplinkBWP_ToAddModList_constraint_1 },
446                 0, 0, /* No default value */
447                 "uplinkBWP-ToAddModList"
448                 },
449         { ATF_POINTER, 4, offsetof(struct UplinkConfig, firstActiveUplinkBWP_Id),
450                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
451                 -1,     /* IMPLICIT tag at current level */
452                 &asn_DEF_BWP_Id,
453                 0,
454                 { 0, 0, 0 },
455                 0, 0, /* No default value */
456                 "firstActiveUplinkBWP-Id"
457                 },
458         { ATF_POINTER, 3, offsetof(struct UplinkConfig, pusch_ServingCellConfig),
459                 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
460                 +1,     /* EXPLICIT tag at current level */
461                 &asn_DEF_pusch_ServingCellConfig_8,
462                 0,
463                 { 0, 0, 0 },
464                 0, 0, /* No default value */
465                 "pusch-ServingCellConfig"
466                 },
467         { ATF_POINTER, 2, offsetof(struct UplinkConfig, carrierSwitching),
468                 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
469                 +1,     /* EXPLICIT tag at current level */
470                 &asn_DEF_carrierSwitching_11,
471                 0,
472                 { 0, 0, 0 },
473                 0, 0, /* No default value */
474                 "carrierSwitching"
475                 },
476         { ATF_POINTER, 1, offsetof(struct UplinkConfig, ext1),
477                 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
478                 0,
479                 &asn_DEF_ext1_15,
480                 0,
481                 { 0, 0, 0 },
482                 0, 0, /* No default value */
483                 "ext1"
484                 },
485 };
486 static const int asn_MAP_UplinkConfig_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 };
487 static const ber_tlv_tag_t asn_DEF_UplinkConfig_tags_1[] = {
488         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
489 };
490 static const asn_TYPE_tag2member_t asn_MAP_UplinkConfig_tag2el_1[] = {
491     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialUplinkBWP */
492     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* uplinkBWP-ToReleaseList */
493     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* uplinkBWP-ToAddModList */
494     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* firstActiveUplinkBWP-Id */
495     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pusch-ServingCellConfig */
496     { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* carrierSwitching */
497     { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* ext1 */
498 };
499 asn_SEQUENCE_specifics_t asn_SPC_UplinkConfig_specs_1 = {
500         sizeof(struct UplinkConfig),
501         offsetof(struct UplinkConfig, _asn_ctx),
502         asn_MAP_UplinkConfig_tag2el_1,
503         7,      /* Count of tags in the map */
504         asn_MAP_UplinkConfig_oms_1,     /* Optional members */
505         6, 1,   /* Root/Additions */
506         6,      /* First extension addition */
507 };
508 asn_TYPE_descriptor_t asn_DEF_UplinkConfig = {
509         "UplinkConfig",
510         "UplinkConfig",
511         &asn_OP_SEQUENCE,
512         asn_DEF_UplinkConfig_tags_1,
513         sizeof(asn_DEF_UplinkConfig_tags_1)
514                 /sizeof(asn_DEF_UplinkConfig_tags_1[0]), /* 1 */
515         asn_DEF_UplinkConfig_tags_1,    /* Same as above */
516         sizeof(asn_DEF_UplinkConfig_tags_1)
517                 /sizeof(asn_DEF_UplinkConfig_tags_1[0]), /* 1 */
518         { 0, 0, SEQUENCE_constraint },
519         asn_MBR_UplinkConfig_1,
520         7,      /* Elements count */
521         &asn_SPC_UplinkConfig_specs_1   /* Additional specs */
522 };
523