diff --git a/openair2/RRC/NR/MESSAGES/asn1_msg.c b/openair2/RRC/NR/MESSAGES/asn1_msg.c index b8d70702b9..f3fb92a61c 100644 --- a/openair2/RRC/NR/MESSAGES/asn1_msg.c +++ b/openair2/RRC/NR/MESSAGES/asn1_msg.c @@ -1063,4 +1063,37 @@ void do_PHYSICALCELLGROUP(uint8_t Mod_id, physicalCellGroupConfig->cs_RNTI->choice.setup = physicalcellgroup_config->RNTI_Value[CC_id]; } +} + +void do_SpCellConfig(uint8_t Mod_id, + int CC_id, + struct NR_SpCellConfig *spconfig){ + + //spconfig->servCellIndex = CALLOC(1,sizeof(NR_ServCellIndex_t)); + //*(spconfig->servCellIndex)= + + gNB_RrcConfigurationReq *common_configuration; + common_configuration = CALLOC(1,sizeof(gNB_RrcConfigurationReq)); + //Fill servingcellconfigcommon config value + rrc_config_servingcellconfigcommon(Mod_id, + CC_id + #if defined(ENABLE_ITTI) + ,common_configuration + #endif + ); + //Fill common config to structure + do_SERVINGCELLCONFIGCOMMON(Mod_id, + CC_id, + #if defined(ENABLE_ITTI) + common_configuration, + #endif + 0 + ); + + spconfig->reconfigurationWithSync = CALLOC(1,sizeof(struct NR_ReconfigurationWithSync)); +/* + memcpy( spconfig->reconfigurationWithSync, + RC.nrrrc[Mod_id]->carrier[0].servingcellconfigcommon, + sizeof(struct NR_ServingCellConfigCommon)); +*/ } \ No newline at end of file diff --git a/openair2/RRC/NR/MESSAGES/asn1_msg.h b/openair2/RRC/NR/MESSAGES/asn1_msg.h index 95f4258e03..d2e8b97391 100644 --- a/openair2/RRC/NR/MESSAGES/asn1_msg.h +++ b/openair2/RRC/NR/MESSAGES/asn1_msg.h @@ -104,6 +104,10 @@ void do_PHYSICALCELLGROUP(uint8_t Mod_id, struct NR_PhysicalCellGroupConfig *physicalCellGroupConfig, physicalcellgroup_t *physicalcellgroup_config); +void do_SpCellConfig(uint8_t Mod_id, + int CC_id, + struct NR_SpCellConfig *spconfig); + diff --git a/openair2/RRC/NR/nr_rrc_config.c b/openair2/RRC/NR/nr_rrc_config.c index f22feb89b2..80008d9af2 100644 --- a/openair2/RRC/NR/nr_rrc_config.c +++ b/openair2/RRC/NR/nr_rrc_config.c @@ -252,4 +252,11 @@ void rrc_config_physicalcellgroup(uint8_t Mod_id, physicalcellgroup_config->tpc_PUSCH_RNTI[CC_id] = 0; physicalcellgroup_config->sp_CSI_RNTI[CC_id] = 0; physicalcellgroup_config->RNTI_Value[CC_id] = 0; +} + +void rrc_config_rachdedicated(uint8_t Mod_id, + int CC_id, + physicalcellgroup_t *physicalcellgroup_config + ){ + } \ No newline at end of file diff --git a/openair2/RRC/NR/nr_rrc_config.h b/openair2/RRC/NR/nr_rrc_config.h index 117687e16e..c30478f0b0 100644 --- a/openair2/RRC/NR/nr_rrc_config.h +++ b/openair2/RRC/NR/nr_rrc_config.h @@ -111,6 +111,11 @@ typedef struct physicalcellgroup_s{ long RNTI_Value[MAX_NUM_CCs]; }physicalcellgroup_t; +typedef struct rach_dedicated_s{ + + +}rach_dedicated_t; + void rrc_config_servingcellconfigcommon(uint8_t Mod_id, int CC_id #if defined(ENABLE_ITTI) diff --git a/openair2/RRC/NR/rrc_gNB.c b/openair2/RRC/NR/rrc_gNB.c index c3edef6e97..f9870a49f6 100644 --- a/openair2/RRC/NR/rrc_gNB.c +++ b/openair2/RRC/NR/rrc_gNB.c @@ -160,13 +160,13 @@ void rrc_gNB_generate_SgNBAdditionRequestAcknowledge( cellGroupconfig->mac_CellGroupConfig = CALLOC(1,sizeof(struct NR_MAC_CellGroupConfig)); cellGroupconfig->physicalCellGroupConfig = CALLOC(1,sizeof(struct NR_PhysicalCellGroupConfig)); cellGroupconfig->spCellConfig = CALLOC(1,sizeof(struct NR_SpCellConfig)); - cellGroupconfig->sCellToAddModList = CALLOC(1,sizeof(struct NR_CellGroupConfig__sCellToAddModList)); + //cellGroupconfig->sCellToAddModList = CALLOC(1,sizeof(struct NR_CellGroupConfig__sCellToAddModList)); rlc_BearerToAddModList = cellGroupconfig->rlc_BearerToAddModList; mac_CellGroupConfig = cellGroupconfig->mac_CellGroupConfig; physicalCellGroupConfig = cellGroupconfig->physicalCellGroupConfig; spCellConfig = cellGroupconfig->spCellConfig; - sCellToAddModList = cellGroupconfig->sCellToAddModList; + //sCellToAddModList = cellGroupconfig->sCellToAddModList; rlc_bearer_config_t *rlc_config; rlc_config = CALLOC(1,sizeof(rlc_bearer_config_t)); @@ -207,28 +207,11 @@ void rrc_gNB_generate_SgNBAdditionRequestAcknowledge( physicalCellGroupConfig, physicalcellgroup_config); - gNB_RrcConfigurationReq *common_configuration; - common_configuration = CALLOC(1,sizeof(gNB_RrcConfigurationReq)); - //Fill servingcellconfigcommon config value - rrc_config_servingcellconfigcommon(ctxt_pP->module_id, - ue_context_pP->ue_context.primaryCC_id - #if defined(ENABLE_ITTI) - ,common_configuration - #endif - ); - //Fill common config to structure - do_SERVINGCELLCONFIGCOMMON(ctxt_pP->module_id, - ue_context_pP->ue_context.primaryCC_id, - #if defined(ENABLE_ITTI) - common_configuration, - #endif - 0 - ); -/* - memcpy( (*spCellConfig)->reconfigurationWithSync->spCellConfigCommon , - RC.nrrrc[ctxt_pP->module_id]->carrier[0].servingcellconfigcommon, - sizeof(struct NR_ServingCellConfigCommon)); -*/ + + do_SpCellConfig(ctxt_pP->module_id, + ue_context_pP->ue_context.primaryCC_id, + spCellConfig); + }