return ROK;
}
-/*******************************************************************
- *
- * @brief Builds NRCell ID
- *
- * @details
- *
- * Function : BuildNrCellId
- *
- * Functionality: Building the NR Cell ID
- *
- * @params[in] BIT_STRING_t *nrcell
- * @return ROK - success
- * RFAILED - failure
- *
- * ****************************************************************/
-
-S16 BuildNrCellId(BIT_STRING_t *nrcell)
-{
- memset(nrcell->buf, 0, nrcell->size);
- nrcell->buf[4] = duCfgParam.sib1Params.cellIdentity;
- nrcell->bits_unused = 4;
- return ROK;
-}
-
/*******************************************************************
*
* @brief Builds Nrcgi
{
return RFAILED;
}
- BuildNrCellId(&nrcgi->nRCellIdentity);
+ fillBitString(&nrcgi->nRCellIdentity, ODU_VALUE_FOUR, ODU_VALUE_FIVE, duCfgParam.sib1Params.cellIdentity);
return ROK;
}
macLcConfig = rlcBearerList->list.array[idx]->mac_LogicalChannelConfig;
if(rlcConfig)
{
- if(rlcConfig->choice.am)
+ switch(rlcConfig->present)
{
- DU_FREE(rlcConfig->choice.am->ul_AM_RLC.sn_FieldLength, sizeof(SN_FieldLengthAM_t));
- DU_FREE(rlcConfig->choice.am->dl_AM_RLC.sn_FieldLength, sizeof(SN_FieldLengthAM_t));
- DU_FREE(rlcConfig->choice.am, sizeof(struct RLC_Config__am));
+ case RLC_Config_PR_am:
+ {
+ if(rlcConfig->choice.am)
+ {
+ DU_FREE(rlcConfig->choice.am->ul_AM_RLC.sn_FieldLength, sizeof(SN_FieldLengthAM_t));
+ DU_FREE(rlcConfig->choice.am->dl_AM_RLC.sn_FieldLength, sizeof(SN_FieldLengthAM_t));
+ DU_FREE(rlcConfig->choice.am, sizeof(struct RLC_Config__am));
+ }
+ break;
+ }
+ case RLC_Config_PR_um_Bi_Directional:
+ {
+ if(rlcConfig->choice.um_Bi_Directional)
+ {
+ DU_FREE(rlcConfig->choice.um_Bi_Directional->dl_UM_RLC.sn_FieldLength, sizeof(SN_FieldLengthUM_t));
+ DU_FREE(rlcConfig->choice.um_Bi_Directional->ul_UM_RLC.sn_FieldLength, sizeof(SN_FieldLengthUM_t));
+ DU_FREE(rlcConfig->choice.um_Bi_Directional, sizeof(struct RLC_Config__um_Bi_Directional));
+ }
+ break;
+ }
+ case RLC_Config_PR_um_Uni_Directional_UL:
+ {
+ if(rlcConfig->choice.um_Uni_Directional_UL)
+ {
+ DU_FREE(rlcConfig->choice.um_Uni_Directional_UL->ul_UM_RLC.sn_FieldLength, sizeof(SN_FieldLengthUM_t));
+ DU_FREE(rlcConfig->choice.um_Uni_Directional_UL , sizeof(struct RLC_Config__um_Uni_Directional_UL));
+ }
+ break;
+ }
+ case RLC_Config_PR_um_Uni_Directional_DL:
+ {
+ if(rlcConfig->choice.um_Uni_Directional_DL )
+ {
+ DU_FREE(rlcConfig->choice.um_Uni_Directional_DL->dl_UM_RLC.sn_FieldLength, sizeof(SN_FieldLengthUM_t));
+ DU_FREE(rlcConfig->choice.um_Uni_Directional_DL , sizeof(struct RLC_Config__um_Uni_Directional_DL));
+ }
+ break;
+ }
}
DU_FREE(rlcConfig, sizeof(struct RLC_Config));
}
}
if(macCellGrpCfg->bsr_Config)
{
+ DU_FREE(macCellGrpCfg->bsr_Config->logicalChannelSR_DelayTimer, sizeof(long));
DU_FREE(macCellGrpCfg->bsr_Config, sizeof(struct BSR_Config));
}
tagConfig = macCellGrpCfg->tag_Config;
int8_t ueIdx = -1;
uint8_t ret=0, ieIdx=0, ieExtIdx = 0, servCellIdx = 0;
bool ueCbFound = false, hoInProgress = false;
- uint16_t nrCellId = 0, cellIdx=0;
+ uint16_t cellIdx=0;
+ uint64_t nrCellId = 0;
uint32_t gnbCuUeF1apId=0, gnbDuUeF1apId=0, bitRateSize=0;
DuUeCb *duUeCb = NULL;
UEContextSetupRequest_t *ueSetReq = NULL;
case ProtocolIE_ID_id_RRCDeliveryStatusRequest:
{
- if(duUeCb->f1UeDb->dlRrcMsg->rrcMsgPdu)
- {
- duUeCb->f1UeDb->dlRrcMsg->deliveryStatRpt = true;
- }
- else
+ if(duUeCb->f1UeDb->dlRrcMsg)
{
- DU_LOG("\nERROR --> Ignoring delivery report, since rrcContainer is not present");
+ if(duUeCb->f1UeDb->dlRrcMsg->rrcMsgPdu)
+ {
+ duUeCb->f1UeDb->dlRrcMsg->deliveryStatRpt = true;
+ }
+ else
+ {
+ DU_LOG("\nERROR --> Ignoring delivery report, since rrcContainer is not present");
+ }
}
break;
}
uint8_t extractCellsToBeActivated(Cells_to_be_Activated_List_t cellsToActivate)
{
uint8_t ret = ROK;
- uint16_t idx, nci, pci = 0;
+ uint16_t idx, pci = 0;
+ uint64_t nci;
Cells_to_be_Activated_List_Item_t cell;
for(idx=0; idx<cellsToActivate.list.count; idx++)
if(cell.nRPCI)
{
- pci = *cell.nRPCI;
+ pci = *cell.nRPCI;
}
ret = duProcCellsToBeActivated(cell.nRCGI.pLMN_Identity.buf, nci, pci);
}
{
uint8_t ieIdx=0, arrIdx=0,ret=ROK;
uint8_t ueId =0 , ueIdx =0, totalActiveUe = 0;
- uint16_t cellId =0, cellIdx =0, crnti=0;
+ uint16_t cellIdx =0, crnti=0;
+ uint64_t cellId =0;
CmLList *f1apPduNode = NULLP;
ReservedF1apPduInfo *f1apPduInfo =NULLP;
F1AP_PDU_t *f1apMsgPdu = NULLP;
uint8_t procPagingMsg(F1AP_PDU_t *f1apMsg)
{
uint8_t ieIdx = 0, cellListIdx = 0;
- uint16_t cellId = 0;
+ uint64_t cellId = 0;
Paging_t *paging = NULLP;
PagingCell_list_t *pagingCelllist = NULLP;
PagingCell_ItemIEs_t *pagingCellItemIes = NULLP;