Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Michael Black
OpenXG-RAN
Commits
31e51f36
Commit
31e51f36
authored
May 11, 2021
by
Melissa Elkadi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Processing NR_UE_Capability_info and sending
parent
04315e89
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
148 additions
and
53 deletions
+148
-53
openair2/COMMON/pdcp_messages_def.h
openair2/COMMON/pdcp_messages_def.h
+1
-0
openair2/COMMON/pdcp_messages_types.h
openair2/COMMON/pdcp_messages_types.h
+1
-0
openair2/RRC/LTE/rrc_UE.c
openair2/RRC/LTE/rrc_UE.c
+132
-40
openair2/RRC/LTE/rrc_defs.h
openair2/RRC/LTE/rrc_defs.h
+7
-0
openair2/RRC/LTE/rrc_eNB.c
openair2/RRC/LTE/rrc_eNB.c
+3
-2
openair2/RRC/LTE/rrc_types.h
openair2/RRC/LTE/rrc_types.h
+1
-0
openair2/RRC/NR_UE/rrc_UE.c
openair2/RRC/NR_UE/rrc_UE.c
+3
-4
openair2/RRC/NR_UE/rrc_defs.h
openair2/RRC/NR_UE/rrc_defs.h
+0
-7
No files found.
openair2/COMMON/pdcp_messages_def.h
View file @
31e51f36
...
...
@@ -31,6 +31,7 @@
MESSAGE_DEF
(
RRC_DCCH_DATA_REQ
,
MESSAGE_PRIORITY_MED_PLUS
,
RrcDcchDataReq
,
rrc_dcch_data_req
)
MESSAGE_DEF
(
RRC_DCCH_DATA_IND
,
MESSAGE_PRIORITY_MED_PLUS
,
RrcDcchDataInd
,
rrc_dcch_data_ind
)
MESSAGE_DEF
(
RRC_PCCH_DATA_REQ
,
MESSAGE_PRIORITY_MED_PLUS
,
RrcPcchDataReq
,
rrc_pcch_data_req
)
MESSAGE_DEF
(
RRC_NRUE_CAP_INFO_IND
,
MESSAGE_PRIORITY_MED_PLUS
,
RrcDcchDataInd
,
rrc_nrue_cap_info_ind
)
MESSAGE_DEF
(
RRC_DCCH_DATA_COPY_IND
,
MESSAGE_PRIORITY_MED_PLUS
,
RrcDcchDataInd
,
rrc_dcch_data_copy_ind
)
// gNB
...
...
openair2/COMMON/pdcp_messages_types.h
View file @
31e51f36
...
...
@@ -34,6 +34,7 @@
#define RRC_DCCH_DATA_REQ(mSGpTR) (mSGpTR)->ittiMsg.rrc_dcch_data_req
#define RRC_DCCH_DATA_IND(mSGpTR) (mSGpTR)->ittiMsg.rrc_dcch_data_ind
#define RRC_PCCH_DATA_REQ(mSGpTR) (mSGpTR)->ittiMsg.rrc_pcch_data_req
#define RRC_NRUE_CAP_INFO_IND(mSGpTR) (mSGpTR)->ittiMsg.rrc_nrue_cap_info_ind
#define RRC_DCCH_DATA_COPY_IND(mSGpTR) (mSGpTR)->ittiMsg.rrc_dcch_data_copy_ind
// gNB
...
...
openair2/RRC/LTE/rrc_UE.c
View file @
31e51f36
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/rrc_defs.h
View file @
31e51f36
...
...
@@ -838,6 +838,13 @@ typedef struct OAI_UECapability_s {
LTE_UE_EUTRA_Capability_t
*
UE_EUTRA_Capability
;
}
OAI_UECapability_t
;
#define MAX_UE_NR_CAPABILITY_SIZE 255
typedef
struct
OAI_NR_UECapability_s
{
uint8_t
sdu
[
MAX_UE_NR_CAPABILITY_SIZE
];
uint8_t
sdu_size
;
NR_UE_NR_Capability_t
*
UE_NR_Capability
;
}
OAI_NR_UECapability_t
;
typedef
struct
UE_RRC_INST_s
{
Rrc_State_t
RrcState
;
Rrc_Sub_State_t
RrcSubState
;
...
...
openair2/RRC/LTE/rrc_eNB.c
View file @
31e51f36
...
...
@@ -4446,8 +4446,8 @@ static int encode_CG_ConfigInfo(
/* Melissa Elkadi: None of the three following if statments are true. In this case,
we never fill the container and in the gNB we are never parsing the UE_capability_info.
I believe this is happening because we are not properly sending the UE_Capability_Info
over from the LTE UE. We received the info from the NR UE but dont fill the container
properly
.
*/
over from the LTE UE. We received the info from the NR UE but
we
dont fill the container
properly
?
*/
if
(
ue_context_pP
->
ue_context
.
UE_Capability_MRDC
)
{
RAT_Container_count
++
;
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_NR_UE_MRDC_Capability
,
NULL
,
...
...
@@ -8149,6 +8149,7 @@ rrc_eNB_decode_dcch(
for
(
i
=
0
;
i
<
ul_dcch_msg
->
message
.
choice
.
c1
.
choice
.
ueCapabilityInformation
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityInformation_r8
.
ue_CapabilityRAT_ContainerList
.
list
.
count
;
i
++
)
{
if
(
ul_dcch_msg
->
message
.
choice
.
c1
.
choice
.
ueCapabilityInformation
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityInformation_r8
.
ue_CapabilityRAT_ContainerList
.
list
.
array
[
i
]
->
rat_Type
==
LTE_RAT_Type_nr
)
{
LOG_I
(
RRC
,
"Melissa we got nrUE capabilities for UE %x
\n
"
,
ctxt_pP
->
rnti
);
if
(
ue_context_p
->
ue_context
.
UE_Capability_nr
)
{
ASN_STRUCT_FREE
(
asn_DEF_NR_UE_NR_Capability
,
ue_context_p
->
ue_context
.
UE_Capability_nr
);
ue_context_p
->
ue_context
.
UE_Capability_nr
=
0
;
...
...
openair2/RRC/LTE/rrc_types.h
View file @
31e51f36
...
...
@@ -66,6 +66,7 @@ typedef enum Rrc_Msg_Type_e {
UE_CAPABILITY_ENQUIRY
,
NRUE_CAPABILITY_ENQUIRY
,
UE_CAPABILITY_INFO
,
NRUE_CAPABILITY_INFO
,
RRC_MEASUREMENT_PROCEDURE
,
NR_UE_RRC_MEASUREMENT
,
}
Rrc_Msg_Type_t
;
...
...
openair2/RRC/NR_UE/rrc_UE.c
View file @
31e51f36
...
...
@@ -2995,7 +2995,7 @@ static void nsa_rrc_ue_process_ueCapabilityEnquiry(void)
UECap
->
sdu_size
=
(
enc_rval
.
encoded
+
7
)
/
8
;
LOG_I
(
NR_RRC
,
"[NR_RRC] NRUE Capability encoded, %d bytes (%zd bits)
\n
"
,
UECap
->
sdu_size
,
enc_rval
.
encoded
+
7
);
/* Melissa: Hack. Need to add ctxt->mod_id as array indices */
NR_UE_rrc_inst
[
0
].
UECap
=
UECap
;
NR_UE_rrc_inst
[
0
].
UECapability
=
UECap
->
sdu
;
NR_UE_rrc_inst
[
0
].
UECapability_size
=
UECap
->
sdu_size
;
...
...
@@ -3006,11 +3006,10 @@ static void nsa_rrc_ue_process_ueCapabilityEnquiry(void)
OCTET_STRING_fromBuf
(
&
ue_CapabilityRAT_Container
.
ue_CapabilityRAT_Container
,
(
const
char
*
)
NR_UE_rrc_inst
[
0
].
UECapability
,
NR_UE_rrc_inst
[
0
].
UECapability_size
);
ue_CapabilityRAT_Container
.
ue_CapabilityRAT_Container
.
buf
=
NR_UE_rrc_inst
[
0
].
UECapability
;
ue_CapabilityRAT_Container
.
ue_CapabilityRAT_Container
.
size
=
NR_UE_rrc_inst
[
0
].
UECapability_size
;
nsa_sendmsg_to_lte_ue
(
ue_CapabilityRAT_Container
.
ue_CapabilityRAT_Container
.
buf
,
ue_CapabilityRAT_Container
.
ue_CapabilityRAT_Container
.
size
,
UE_CAPABILITY_INFO
);
NR
UE_CAPABILITY_INFO
);
}
void
process_lte_nsa_msg
(
nsa_msg_t
*
msg
,
int
msg_len
)
...
...
openair2/RRC/NR_UE/rrc_defs.h
View file @
31e51f36
...
...
@@ -70,13 +70,6 @@ typedef enum {
nr_RadioBearerConfigX_r15
=
1
}
nsa_message_t
;
#define MAX_UE_NR_CAPABILITY_SIZE 255
typedef
struct
OAI_NR_UECapability_s
{
uint8_t
sdu
[
MAX_UE_NR_CAPABILITY_SIZE
];
uint8_t
sdu_size
;
NR_UE_NR_Capability_t
*
UE_NR_Capability
;
}
OAI_NR_UECapability_t
;
typedef
struct
NR_UE_RRC_INST_s
{
NR_MeasConfig_t
*
meas_config
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment