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
alex037yang
OpenXG-RAN
Commits
cd14e5d3
Commit
cd14e5d3
authored
Nov 13, 2019
by
LAD
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Clean code for monolithic case. Remove support for CU/DU.
parent
d812ffd6
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
28 additions
and
48 deletions
+28
-48
openair2/RRC/LTE/rrc_eNB.c
openair2/RRC/LTE/rrc_eNB.c
+23
-45
targets/COMMON/create_tasks.c
targets/COMMON/create_tasks.c
+5
-3
No files found.
openair2/RRC/LTE/rrc_eNB.c
View file @
cd14e5d3
...
...
@@ -3201,18 +3201,17 @@ void rrc_eNB_generate_defaultRRCConnectionReconfiguration(const protocol_ctxt_t
mac_MainConfig
->
phr_Config
->
choice
.
setup
.
periodicPHR_Timer
=
LTE_MAC_MainConfig__phr_Config__setup__periodicPHR_Timer_sf500
;
// sf20 = 20 subframes // LTE_MAC_MainConfig__phr_Config__setup__periodicPHR_Timer_infinity
mac_MainConfig
->
phr_Config
->
choice
.
setup
.
prohibitPHR_Timer
=
LTE_MAC_MainConfig__phr_Config__setup__prohibitPHR_Timer_sf200
;
// sf20 = 20 subframes // LTE_MAC_MainConfig__phr_Config__setup__prohibitPHR_Timer_sf1000
mac_MainConfig
->
phr_Config
->
choice
.
setup
.
dl_PathlossChange
=
LTE_MAC_MainConfig__phr_Config__setup__dl_PathlossChange_dB3
;
// Value dB1 =1 dB, dB3 = 3 dB
mac_MainConfig
->
drx_Config
=
NULL
;
/* CDRX Configuration */
mac_MainConfig
->
drx_Config
=
NULL
;
rnti_t
rnti
=
ue_context_pP
->
ue_id_rnti
;
module_id_t
module_id
=
ctxt_pP
->
module_id
;
LOG_D
(
RRC
,
"Processing the DRX configuration in RRC Connection Reconfiguration
\n
"
);
/* Process the IE drx_Config */
mac_MainConfig
->
drx_Config
=
do_DrxConfig
(
cc_id
,
&
rrc_inst
->
configuration
,
UEcap
);
// drx_Config IE
if
(
NODE_IS_MONOLITHIC
(
rrc_inst
->
node_type
))
{
mac_MainConfig
->
drx_Config
=
do_DrxConfig
(
cc_id
,
&
rrc_inst
->
configuration
,
UEcap
);
// drx_Config IE
if
(
mac_MainConfig
->
drx_Config
==
NULL
)
{
LOG_W
(
RRC
,
"drx_Configuration parameter is NULL, cannot configure local UE parameters or CDRX is deactivated
\n
"
);
}
else
{
...
...
@@ -3916,49 +3915,28 @@ flexran_rrc_eNB_generate_defaultRRCConnectionReconfiguration(const protocol_ctxt
mac_MainConfig
->
phr_Config
->
choice
.
setup
.
prohibitPHR_Timer
=
LTE_MAC_MainConfig__phr_Config__setup__prohibitPHR_Timer_sf200
;
// sf20 = 20 subframes // LTE_MAC_MainConfig__phr_Config__setup__prohibitPHR_Timer_sf1000
mac_MainConfig
->
phr_Config
->
choice
.
setup
.
dl_PathlossChange
=
LTE_MAC_MainConfig__phr_Config__setup__dl_PathlossChange_dB3
;
// Value dB1 =1 dB, dB3 = 3 dB
if
(
NODE_IS_MONOLITHIC
(
RC
.
rrc
[
ctxt_pP
->
module_id
]
->
node_type
))
{
/* CDRX Configuration */
/*
uint8_t cc_id = ue_context_pP->ue_context.primaryCC_id;
LTE_UE_EUTRA_Capability_t *UEcap = ue_context_pP->ue_context.UE_Capability;
// Need to check if UE is a BR UE
rnti_t rnti = ue_context_pP->ue_id_rnti;
module_id_t module_id = ctxt_pP->module_id;
int UE_id = find_UE_id(module_id, rnti);
if (UE_id != -1) {
eNB_MAC_INST *mac = RC.mac[module_id];
UE_list_t *UE_list = &(mac->UE_list);
if ((rrc_inst->carrier[cc_id].sib1->tdd_Config == NULL) &&
(UE_list->UE_template[ue_context_pP->ue_context.primaryCC_id][UE_id].rach_resource_type == 0)) {
// CDRX can be only configured in case of FDD and non BR UE (09/04/19)
LOG_D(RRC, "Processing the DRX configuration in RRC Connection Reconfiguration\n");
///// Process the IE drx_Config /
if (cc_id < MAX_NUM_CCs) {
mac_MainConfig->drx_Config = do_DrxConfig(cc_id, &rrc_inst->configuration, UEcap); // drx_Config IE
if (mac_MainConfig->drx_Config == NULL) {
LOG_E(RRC, "drx_Configuration parameter is NULL, cannot configure local UE parameters\n");
} else {
////// Set timers and thresholds values in local MAC context of UE /
eNB_Config_Local_DRX(module_id, rnti, mac_MainConfig->drx_Config);
LOG_D(RRC, "DRX configured in mac main config for RRC Connection Reconfiguration\n");
}
} else {
LOG_E(RRC, "Invalid CC_id for DRX configuration\n");
}
} else { // CDRX not implemented for TDD and LTE-M (09/04/19)
LOG_E(RRC, "CDRX not implemented for TDD and LTE-M\n");
}
} else { // UE_id invalid
LOG_E(RRC, "Invalid UE_id found!\n");
/* CDRX Configuration */
mac_MainConfig
->
drx_Config
=
NULL
;
rnti_t
rnti
=
ue_context_pP
->
ue_id_rnti
;
module_id_t
module_id
=
ctxt_pP
->
module_id
;
LOG_D
(
RRC
,
"Processing the DRX configuration in RRC Connection Reconfiguration
\n
"
);
/* Process the IE drx_Config */
if
(
NODE_IS_MONOLITHIC
(
rrc_inst
->
node_type
))
{
mac_MainConfig
->
drx_Config
=
do_DrxConfig
(
cc_id
,
&
rrc_inst
->
configuration
,
UEcap
);
// drx_Config IE
if
(
mac_MainConfig
->
drx_Config
==
NULL
)
{
LOG_W
(
RRC
,
"drx_Configuration parameter is NULL, cannot configure local UE parameters or CDRX is deactivated
\n
"
);
}
else
{
/* Send DRX configuration to MAC task to configure timers of local UE context */
message_p
=
itti_alloc_new_message
(
TASK_RRC_ENB
,
RRC_MAC_DRX_CONFIG_REQ
);
RRC_MAC_DRX_CONFIG_REQ
(
message_p
).
rnti
=
rnti
;
RRC_MAC_DRX_CONFIG_REQ
(
message_p
).
drx_Configuration
=
mac_MainConfig
->
drx_Config
;
itti_send_msg_to_task
(
TASK_MAC_ENB
,
module_id
,
message_p
);
LOG_D
(
RRC
,
"DRX configured in MAC Main Configuration for RRC Connection Reconfiguration
\n
"
);
}
*/
/* End of CDRX configuration */
}
/* End of CDRX configuration */
#if (LTE_RRC_VERSION >= MAKE_VERSION(9, 0, 0))
sr_ProhibitTimer_r9
=
CALLOC
(
1
,
sizeof
(
long
));
...
...
targets/COMMON/create_tasks.c
View file @
cd14e5d3
...
...
@@ -91,9 +91,11 @@ int create_tasks(uint32_t enb_nb) {
AssertFatal
(
rc
>=
0
,
"Create task for DU F1AP failed
\n
"
);
}
LOG_I
(
MAC
,
"Creating MAC eNB Task
\n
"
);
rc
=
itti_create_task
(
TASK_MAC_ENB
,
mac_enb_task
,
NULL
);
AssertFatal
(
rc
>=
0
,
"Create task for MAC eNB failed
\n
"
);
if
(
!
NODE_IS_CU
(
type
))
{
LOG_I
(
MAC
,
"Creating MAC eNB Task
\n
"
);
rc
=
itti_create_task
(
TASK_MAC_ENB
,
mac_enb_task
,
NULL
);
AssertFatal
(
rc
>=
0
,
"Create task for MAC eNB failed
\n
"
);
}
return
0
;
}
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