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
1b49e7e2
Commit
1b49e7e2
authored
3 years ago
by
Melissa Elkadi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Additions to get UE connected to EPC
parent
b7e5c9cf
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
60 additions
and
63 deletions
+60
-63
executables/nr-softmodem.c
executables/nr-softmodem.c
+12
-14
executables/nr-ue.c
executables/nr-ue.c
+1
-1
openair2/GNB_APP/gnb_app.c
openair2/GNB_APP/gnb_app.c
+1
-1
openair2/RRC/LTE/MESSAGES/asn1_msg.c
openair2/RRC/LTE/MESSAGES/asn1_msg.c
+39
-43
openair2/RRC/LTE/defs_NB_IoT.h
openair2/RRC/LTE/defs_NB_IoT.h
+2
-1
openair2/RRC/LTE/rrc_UE.c
openair2/RRC/LTE/rrc_UE.c
+1
-1
openair2/RRC/LTE/rrc_defs.h
openair2/RRC/LTE/rrc_defs.h
+2
-1
openair2/RRC/NR/nr_rrc_defs.h
openair2/RRC/NR/nr_rrc_defs.h
+2
-1
No files found.
executables/nr-softmodem.c
View file @
1b49e7e2
...
@@ -612,8 +612,8 @@ static void wait_nfapi_init(char *thread_name) {
...
@@ -612,8 +612,8 @@ static void wait_nfapi_init(char *thread_name) {
}
}
void
init_pdcp
(
void
)
{
void
init_pdcp
(
void
)
{
if
(
!
NODE_IS_DU
(
RC
.
nrrrc
[
0
]
->
node_type
))
{
//
if (!NODE_IS_DU(RC.nrrrc[0]->node_type)) {
//
pdcp_layer_init();
pdcp_layer_init
();
uint32_t
pdcp_initmask
=
(
IS_SOFTMODEM_NOS1
)
?
uint32_t
pdcp_initmask
=
(
IS_SOFTMODEM_NOS1
)
?
(
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
)
:
LINK_ENB_PDCP_TO_GTPV1U_BIT
;
(
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
)
:
LINK_ENB_PDCP_TO_GTPV1U_BIT
;
...
@@ -624,18 +624,16 @@ void init_pdcp(void) {
...
@@ -624,18 +624,16 @@ void init_pdcp(void) {
nr_pdcp_module_init
(
pdcp_initmask
,
0
);
nr_pdcp_module_init
(
pdcp_initmask
,
0
);
if
(
NODE_IS_CU
(
RC
.
nrrrc
[
0
]
->
node_type
))
{
/*if (NODE_IS_CU(RC.rrc[0]->node_type)) {
LOG_I
(
PDCP
,
"node is CU, pdcp send rlc_data_req by proto_agent
\n
"
);
pdcp_set_rlc_data_req_func((send_rlc_data_req_func_t)proto_agent_send_rlc_data_req);
pdcp_set_rlc_data_req_func((send_rlc_data_req_func_t)proto_agent_send_rlc_data_req);
}
else
{
} else {*/
LOG_I
(
PDCP
,
"node is gNB
\n
"
);
pdcp_set_rlc_data_req_func
((
send_rlc_data_req_func_t
)
rlc_data_req
);
pdcp_set_rlc_data_req_func
((
send_rlc_data_req_func_t
)
rlc_data_req
);
pdcp_set_pdcp_data_ind_func
((
pdcp_data_ind_func_t
)
pdcp_data_ind
);
pdcp_set_pdcp_data_ind_func
((
pdcp_data_ind_func_t
)
pdcp_data_ind
);
}
//}
}
else
{
/*} else {
LOG_I
(
PDCP
,
"node is DU, rlc send pdcp_data_ind by proto_agent
\n
"
);
pdcp_set_pdcp_data_ind_func((pdcp_data_ind_func_t) proto_agent_send_pdcp_data_ind);
pdcp_set_pdcp_data_ind_func((pdcp_data_ind_func_t) proto_agent_send_pdcp_data_ind);
}
}*/
}
}
...
...
This diff is collapsed.
Click to expand it.
executables/nr-ue.c
View file @
1b49e7e2
...
@@ -326,7 +326,7 @@ static void *NRUE_phy_stub_standalone_pnf_task(void *arg)
...
@@ -326,7 +326,7 @@ static void *NRUE_phy_stub_standalone_pnf_task(void *arg)
else
if
(
nr_prach
==
2
)
else
if
(
nr_prach
==
2
)
{
{
LOG_I
(
NR_PHY
,
"In %s: [UE %d] RA completed, setting UE mode to PUSCH
\n
"
,
__FUNCTION__
,
mod_id
);
LOG_I
(
NR_PHY
,
"In %s: [UE %d] RA completed, setting UE mode to PUSCH
\n
"
,
__FUNCTION__
,
mod_id
);
//
nr_DRB_preconfiguration(mac->crnti);
nr_DRB_preconfiguration
(
mac
->
crnti
);
}
}
else
if
(
nr_prach
==
3
)
else
if
(
nr_prach
==
3
)
{
{
...
...
This diff is collapsed.
Click to expand it.
openair2/GNB_APP/gnb_app.c
View file @
1b49e7e2
...
@@ -207,7 +207,7 @@ void *gNB_app_task(void *args_p)
...
@@ -207,7 +207,7 @@ void *gNB_app_task(void *args_p)
}
}
if
(
RC
.
nb_nr_inst
>
0
)
{
if
(
RC
.
nb_nr_inst
>
0
)
{
init_pdcp
();
//
init_pdcp();
}
}
if
(
is_x2ap_enabled
()
)
{
//&& !NODE_IS_DU(RC.rrc[0]->node_type)
if
(
is_x2ap_enabled
()
)
{
//&& !NODE_IS_DU(RC.rrc[0]->node_type)
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/MESSAGES/asn1_msg.c
View file @
1b49e7e2
...
@@ -3256,17 +3256,14 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
...
@@ -3256,17 +3256,14 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
.
ue_CapabilityRequest
.
list
.
count
=
0
;
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
.
ue_CapabilityRequest
.
list
.
count
=
0
;
ASN_SEQUENCE_ADD
(
&
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
.
ue_CapabilityRequest
.
list
,
ASN_SEQUENCE_ADD
(
&
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
.
ue_CapabilityRequest
.
list
,
&
rat
);
&
rat
);
/* request NR configuration */
LTE_UECapabilityEnquiry_r8_IEs_t
*
r8
=
&
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
;
LTE_UECapabilityEnquiry_r8_IEs_t
*
r8
=
&
dl_dcch_msg
.
message
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry
.
criticalExtensions
.
choice
.
c1
.
choice
.
ueCapabilityEnquiry_r8
;
LTE_UECapabilityEnquiry_v8a0_IEs_t
r8_a0
;
LTE_UECapabilityEnquiry_v8a0_IEs_t
r8_a0
;
LTE_UECapabilityEnquiry_v1180_IEs_t
r11_80
;
LTE_UECapabilityEnquiry_v1180_IEs_t
r11_80
;
LTE_UECapabilityEnquiry_v1310_IEs_t
r13_10
;
LTE_UECapabilityEnquiry_v1310_IEs_t
r13_10
;
LTE_UECapabilityEnquiry_v1430_IEs_t
r14_30
;
LTE_UECapabilityEnquiry_v1430_IEs_t
r14_30
;
LTE_UECapabilityEnquiry_v1510_IEs_t
r15_10
;
LTE_UECapabilityEnquiry_v1510_IEs_t
r15_10
;
OCTET_STRING_t
req_freq
;
if
(
nr_band
>
0
)
{
/* request NR configuration */
memset
(
&
r8_a0
,
0
,
sizeof
(
r8_a0
));
memset
(
&
r8_a0
,
0
,
sizeof
(
r8_a0
));
memset
(
&
r11_80
,
0
,
sizeof
(
r11_80
));
memset
(
&
r11_80
,
0
,
sizeof
(
r11_80
));
...
@@ -3293,12 +3290,13 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
...
@@ -3293,12 +3290,13 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
nsa_band
=
(
NR_FreqBandInformation_t
*
)
calloc
(
1
,
sizeof
(
NR_FreqBandInformation_t
));
nsa_band
=
(
NR_FreqBandInformation_t
*
)
calloc
(
1
,
sizeof
(
NR_FreqBandInformation_t
));
nsa_band
->
present
=
NR_FreqBandInformation_PR_bandInformationNR
;
nsa_band
->
present
=
NR_FreqBandInformation_PR_bandInformationNR
;
nsa_band
->
choice
.
bandInformationNR
=
(
NR_FreqBandInformationNR_t
*
)
calloc
(
1
,
sizeof
(
NR_FreqBandInformationNR_t
));
nsa_band
->
choice
.
bandInformationNR
=
(
NR_FreqBandInformationNR_t
*
)
calloc
(
1
,
sizeof
(
NR_FreqBandInformationNR_t
));
//
if(nr_band > 0)
if
(
nr_band
>
0
)
nsa_band
->
choice
.
bandInformationNR
->
bandNR
=
nr_band
;
nsa_band
->
choice
.
bandInformationNR
->
bandNR
=
nr_band
;
//
else
else
//
nsa_band->choice.bandInformationNR->bandNR = 78;
nsa_band
->
choice
.
bandInformationNR
->
bandNR
=
78
;
ASN_SEQUENCE_ADD
(
&
nsa_band_list
->
list
,
nsa_band
);
ASN_SEQUENCE_ADD
(
&
nsa_band_list
->
list
,
nsa_band
);
OCTET_STRING_t
req_freq
;
//unsigned char req_freq_buf[5] = { 0x00, 0x20, 0x1a, 0x02, 0x68 }; // bands 7 & nr78
//unsigned char req_freq_buf[5] = { 0x00, 0x20, 0x1a, 0x02, 0x68 }; // bands 7 & nr78
unsigned
char
req_freq_buf
[
1024
];
unsigned
char
req_freq_buf
[
1024
];
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_NR_FreqBandList
,
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_NR_FreqBandList
,
...
@@ -3323,11 +3321,9 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
...
@@ -3323,11 +3321,9 @@ uint8_t do_UECapabilityEnquiry( const protocol_ctxt_t *const ctxt_pP,
// req_freq.size = 21;
// req_freq.size = 21;
r15_10
.
requestedFreqBandsNR_MRDC_r15
=
&
req_freq
;
r15_10
.
requestedFreqBandsNR_MRDC_r15
=
&
req_freq
;
// Add request for eutra-nr
if
(
LOG_DEBUGFLAG
(
DEBUG_ASN1
)
)
{
}
// if ( LOG_DEBUGFLAG(DEBUG_ASN1) ) {
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_DCCH_Message
,
(
void
*
)
&
dl_dcch_msg
);
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_DCCH_Message
,
(
void
*
)
&
dl_dcch_msg
);
//
}
}
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_LTE_DL_DCCH_Message
,
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_LTE_DL_DCCH_Message
,
NULL
,
NULL
,
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/defs_NB_IoT.h
View file @
1b49e7e2
...
@@ -147,7 +147,8 @@ typedef struct UE_RRC_INFO_NB_IoT_s {
...
@@ -147,7 +147,8 @@ typedef struct UE_RRC_INFO_NB_IoT_s {
//Measurement Report not supported in NB-IoT
//Measurement Report not supported in NB-IoT
#define RRC_BUF_SIZE 8192
#define PAYLOAD_SIZE_MAX 1024
#define RRC_BUF_SIZE 512
#define UNDEF_SECURITY_MODE 0xff
#define UNDEF_SECURITY_MODE 0xff
#define NO_SECURITY_MODE 0x20
#define NO_SECURITY_MODE 0x20
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/rrc_UE.c
View file @
1b49e7e2
...
@@ -4627,7 +4627,7 @@ void ue_measurement_report_triggering(protocol_ctxt_t *const ctxt_pP, const uint
...
@@ -4627,7 +4627,7 @@ void ue_measurement_report_triggering(protocol_ctxt_t *const ctxt_pP, const uint
if
(
is_state_connected
&&
is_t304_inactive
&&
have_meas_flag
)
{
if
(
is_state_connected
&&
is_t304_inactive
&&
have_meas_flag
)
{
LOG_I
(
RRC
,
"[UE %d] Frame %d: Triggering generation of Meas Report for NR_r15. count = %d
\n
"
,
LOG_I
(
RRC
,
"[UE %d] Frame %d: Triggering generation of Meas Report for NR_r15. count = %d
\n
"
,
ctxt_pP
->
module_id
,
ctxt_pP
->
frame
,
ue
->
subframeCount
);
ctxt_pP
->
module_id
,
ctxt_pP
->
frame
,
ue
->
subframeCount
);
//usleep(200000);
Melissa Elkadi come back for EPC
usleep
(
200000
);
//
Melissa Elkadi come back for EPC
if
(
ue
->
measReportList
[
i
][
j
]
==
NULL
)
{
if
(
ue
->
measReportList
[
i
][
j
]
==
NULL
)
{
ue
->
measReportList
[
i
][
j
]
=
malloc
(
sizeof
(
MEAS_REPORT_LIST
));
ue
->
measReportList
[
i
][
j
]
=
malloc
(
sizeof
(
MEAS_REPORT_LIST
));
}
}
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/rrc_defs.h
View file @
1b49e7e2
...
@@ -328,7 +328,8 @@ typedef enum SL_TRIGGER_e {
...
@@ -328,7 +328,8 @@ typedef enum SL_TRIGGER_e {
#define MAX_MEAS_CONFIG 7
#define MAX_MEAS_CONFIG 7
#define MAX_MEAS_ID 7
#define MAX_MEAS_ID 7
#define RRC_BUF_SIZE 8192
#define PAYLOAD_SIZE_MAX 1024
#define RRC_BUF_SIZE 512
#define UNDEF_SECURITY_MODE 0xff
#define UNDEF_SECURITY_MODE 0xff
#define NO_SECURITY_MODE 0x20
#define NO_SECURITY_MODE 0x20
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/nr_rrc_defs.h
View file @
1b49e7e2
...
@@ -127,7 +127,8 @@ typedef enum UE_STATE_NR_e {
...
@@ -127,7 +127,8 @@ typedef enum UE_STATE_NR_e {
#define MAX_MEAS_CONFIG 7
#define MAX_MEAS_CONFIG 7
#define MAX_MEAS_ID 7
#define MAX_MEAS_ID 7
#define RRC_BUF_SIZE 8192
#define PAYLOAD_SIZE_MAX 1024
#define RRC_BUF_SIZE 512
#define UNDEF_SECURITY_MODE 0xff
#define UNDEF_SECURITY_MODE 0xff
#define NO_SECURITY_MODE 0x20
#define NO_SECURITY_MODE 0x20
...
...
This diff is collapsed.
Click to expand it.
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