Commit 630b8b58 authored by luis_pereira87's avatar luis_pereira87

Differentiate NSA and SA in some pieces of code

parent 1c0640a2
...@@ -1015,7 +1015,6 @@ void nr_DRB_preconfiguration(uint16_t crnti) ...@@ -1015,7 +1015,6 @@ void nr_DRB_preconfiguration(uint16_t crnti)
PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, 0, ENB_FLAG_NO, crnti, 0, 0,0); PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, 0, ENB_FLAG_NO, crnti, 0, 0,0);
} }
// FIXME: integrity_algorithm was temporarily set to 0
nr_rrc_pdcp_config_asn1_req( nr_rrc_pdcp_config_asn1_req(
&ctxt, &ctxt,
(NR_SRB_ToAddModList_t *) NULL, (NR_SRB_ToAddModList_t *) NULL,
......
...@@ -488,32 +488,33 @@ rrc_gNB_generate_RRCSetup( ...@@ -488,32 +488,33 @@ rrc_gNB_generate_RRCSetup(
// configure MAC // configure MAC
rrc_mac_config_req_gNB(rrc->module_id, rrc_mac_config_req_gNB(rrc->module_id,
rrc->carrier.ssb_SubcarrierOffset, rrc->carrier.ssb_SubcarrierOffset,
rrc->carrier.pdsch_AntennaPorts, rrc->carrier.pdsch_AntennaPorts,
rrc->carrier.pusch_AntennaPorts, rrc->carrier.pusch_AntennaPorts,
NULL, NULL,
0, 0,
ue_context_pP->ue_context.rnti, ue_context_pP->ue_context.rnti,
ue_context_pP->ue_context.masterCellGroup get_softmodem_params()->sa ? ue_context_pP->ue_context.masterCellGroup : (NR_CellGroupConfig_t *)NULL);
);
nr_rrc_rlc_config_asn1_req(ctxt_pP, nr_rrc_rlc_config_asn1_req(ctxt_pP,
ue_context_pP->ue_context.SRB_configList, ue_context_pP->ue_context.SRB_configList,
NULL, NULL,
NULL, NULL,
NULL, NULL,
ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList); get_softmodem_params()->sa ? ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList : NULL);
nr_rrc_pdcp_config_asn1_req(ctxt_pP, nr_rrc_pdcp_config_asn1_req(ctxt_pP,
ue_context_pP->ue_context.SRB_configList, ue_context_pP->ue_context.SRB_configList,
NULL, NULL,
NULL, NULL,
0xff, 0xff,
NULL, NULL,
NULL, NULL,
NULL, NULL,
NULL, NULL,
NULL, NULL,
NULL, NULL,
ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList); get_softmodem_params()->sa ? ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList : NULL);
#endif #endif
} }
break; break;
...@@ -1267,23 +1268,23 @@ rrc_gNB_process_RRCReconfigurationComplete( ...@@ -1267,23 +1268,23 @@ rrc_gNB_process_RRCReconfigurationComplete(
SRB_configList, // NULL, SRB_configList, // NULL,
DRB_configList, DRB_configList,
DRB_Release_configList2, DRB_Release_configList2,
0, // already configured during the securitymodecommand 0xff, // already configured during the securitymodecommand
kRRCenc, kRRCenc,
kRRCint, kRRCint,
kUPenc, kUPenc,
NULL, NULL,
NULL, NULL,
NULL, NULL,
ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList); get_softmodem_params()->sa ? ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList : NULL);
/* Refresh SRBs/DRBs */ /* Refresh SRBs/DRBs */
if (!NODE_IS_CU(RC.nrrrc[ctxt_pP->module_id]->node_type)) { if (!NODE_IS_CU(RC.nrrrc[ctxt_pP->module_id]->node_type)) {
LOG_D(NR_RRC,"Configuring RLC DRBs/SRBs for UE %x\n",ue_context_pP->ue_context.rnti); LOG_D(NR_RRC,"Configuring RLC DRBs/SRBs for UE %x\n",ue_context_pP->ue_context.rnti);
nr_rrc_rlc_config_asn1_req(ctxt_pP, nr_rrc_rlc_config_asn1_req(ctxt_pP,
SRB_configList, // NULL, SRB_configList, // NULL,
DRB_configList, DRB_configList,
DRB_Release_configList2, DRB_Release_configList2,
NULL, NULL,
ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList); get_softmodem_params()->sa ? ue_context_pP->ue_context.masterCellGroup->rlc_BearerToAddModList : NULL);
} }
#endif #endif
...@@ -1891,7 +1892,9 @@ int nr_rrc_gNB_decode_ccch(protocol_ctxt_t *const ctxt_pP, ...@@ -1891,7 +1892,9 @@ int nr_rrc_gNB_decode_ccch(protocol_ctxt_t *const ctxt_pP,
CC_id); CC_id);
// FIXME: Check the best place to perform this DRB configuration // FIXME: Check the best place to perform this DRB configuration
nr_DRB_preconfiguration(ctxt_pP->rnti); if(get_softmodem_params()->sa) {
nr_DRB_preconfiguration(ctxt_pP->rnti);
}
} }
break; break;
......
...@@ -375,26 +375,25 @@ void rrc_add_nsa_user(gNB_RRC_INST *rrc,struct rrc_gNB_ue_context_s *ue_context_ ...@@ -375,26 +375,25 @@ void rrc_add_nsa_user(gNB_RRC_INST *rrc,struct rrc_gNB_ue_context_s *ue_context_
ctxt.eNB_index); ctxt.eNB_index);
} }
nr_rrc_pdcp_config_asn1_req( nr_rrc_pdcp_config_asn1_req(&ctxt,
&ctxt, get_softmodem_params()->sa ? ue_context_p->ue_context.rb_config->srb_ToAddModList : (NR_SRB_ToAddModList_t *) NULL,
(NR_SRB_ToAddModList_t *) NULL, ue_context_p->ue_context.rb_config->drb_ToAddModList ,
ue_context_p->ue_context.rb_config->drb_ToAddModList , ue_context_p->ue_context.rb_config->drb_ToReleaseList,
ue_context_p->ue_context.rb_config->drb_ToReleaseList, (ue_context_p->ue_context.integrity_algorithm << 4) | ue_context_p->ue_context.ciphering_algorithm,
(ue_context_p->ue_context.integrity_algorithm << 4) | ue_context_p->ue_context.ciphering_algorithm, NULL, /* kRRCenc - unused */
NULL, /* kRRCenc - unused */ NULL, /* kRRCint - unused */
NULL, /* kRRCint - unused */ kUPenc, /* kUPenc */
kUPenc, /* kUPenc */ NULL, /* kUPint - unused */
NULL, /* kUPint - unused */ NULL,
NULL, NULL,
NULL, ue_context_p->ue_context.secondaryCellGroup->rlc_BearerToAddModList);
ue_context_p->ue_context.secondaryCellGroup->rlc_BearerToAddModList);
nr_rrc_rlc_config_asn1_req (&ctxt, nr_rrc_rlc_config_asn1_req (&ctxt,
(NR_SRB_ToAddModList_t *) NULL, get_softmodem_params()->sa ? ue_context_p->ue_context.rb_config->srb_ToAddModList : (NR_SRB_ToAddModList_t *) NULL,
ue_context_p->ue_context.rb_config->drb_ToAddModList, ue_context_p->ue_context.rb_config->drb_ToAddModList,
ue_context_p->ue_context.rb_config->drb_ToReleaseList, ue_context_p->ue_context.rb_config->drb_ToReleaseList,
(LTE_PMCH_InfoList_r9_t *) NULL, (LTE_PMCH_InfoList_r9_t *) NULL,
ue_context_p->ue_context.secondaryCellGroup->rlc_BearerToAddModList); ue_context_p->ue_context.secondaryCellGroup->rlc_BearerToAddModList);
LOG_D(RRC, "%s:%d: done RRC PDCP/RLC ASN1 request for UE rnti %x\n", __FUNCTION__, __LINE__, ctxt.rnti); LOG_D(RRC, "%s:%d: done RRC PDCP/RLC ASN1 request for UE rnti %x\n", __FUNCTION__, __LINE__, ctxt.rnti);
......
...@@ -164,7 +164,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco ...@@ -164,7 +164,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
secondaryCellGroup->rlc_BearerToAddModList = calloc(1,sizeof(*secondaryCellGroup->rlc_BearerToAddModList)); secondaryCellGroup->rlc_BearerToAddModList = calloc(1,sizeof(*secondaryCellGroup->rlc_BearerToAddModList));
ASN_SEQUENCE_ADD(&secondaryCellGroup->rlc_BearerToAddModList->list, RLC_BearerConfig); ASN_SEQUENCE_ADD(&secondaryCellGroup->rlc_BearerToAddModList->list, RLC_BearerConfig);
if (0) { if (get_softmodem_params()->sa) {
NR_RLC_BearerConfig_t *RLC_BearerConfig_srb1 = calloc(1,sizeof(*RLC_BearerConfig_srb1)); NR_RLC_BearerConfig_t *RLC_BearerConfig_srb1 = calloc(1,sizeof(*RLC_BearerConfig_srb1));
nr_rlc_bearer_init(RLC_BearerConfig_srb1, NR_RLC_BearerConfig__servedRadioBearer_PR_srb_Identity); nr_rlc_bearer_init(RLC_BearerConfig_srb1, NR_RLC_BearerConfig__servedRadioBearer_PR_srb_Identity);
nr_drb_config(RLC_BearerConfig_srb1->rlc_Config, NR_RLC_Config_PR_am); nr_drb_config(RLC_BearerConfig_srb1->rlc_Config, NR_RLC_Config_PR_am);
...@@ -1279,7 +1279,7 @@ void fill_default_rbconfig(NR_RadioBearerConfig_t *rbconfig, ...@@ -1279,7 +1279,7 @@ void fill_default_rbconfig(NR_RadioBearerConfig_t *rbconfig,
rbconfig->srb_ToAddModList = NULL; rbconfig->srb_ToAddModList = NULL;
if (0) { if (get_softmodem_params()->sa) {
rbconfig->srb_ToAddModList = calloc(1,sizeof(*rbconfig->srb_ToAddModList)); rbconfig->srb_ToAddModList = calloc(1,sizeof(*rbconfig->srb_ToAddModList));
NR_SRB_ToAddMod_t *srb1_ToAddMod = calloc(1,sizeof(*srb1_ToAddMod)); NR_SRB_ToAddMod_t *srb1_ToAddMod = calloc(1,sizeof(*srb1_ToAddMod));
srb1_ToAddMod->srb_Identity = 1; srb1_ToAddMod->srb_Identity = 1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment