X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac_cfg_hdl.c;h=69591c48849cdabd06aa2b763501ca0b2f27c103;hb=f3638e5eecd563d0a02488afe54a6bf19b52ffad;hp=cd3b9a543c1c28f054a43a5ac1b5fbf83de0740f;hpb=f0f43ed6f745eec0ceb4e204c62f4dc36f1e8d7f;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac_cfg_hdl.c b/src/5gnrmac/mac_cfg_hdl.c index cd3b9a543..69591c488 100644 --- a/src/5gnrmac/mac_cfg_hdl.c +++ b/src/5gnrmac/mac_cfg_hdl.c @@ -755,60 +755,6 @@ void freeMacSliceCfgReq(MacSliceCfgReq *cfgReq,Pst *pst) } } -/** - * @brief fill Mac Slice Config Rsp - * - * @details - * - * Function : fillMacSliceCfgRsp - * - * This function fill Mac Slice Config Rsp - * - * @param[in] SchSliceCfgRsp *sliceCfgRsp, MacSliceCfgRsp *macSliceCfgRsp, - * uint8_t *count - * @return int - * -# ROK - **/ -uint8_t fillMacSliceCfgRsp(SchSliceCfgRsp *schSliceCfgRsp, MacSliceCfgRsp *macSliceCfgRsp) -{ - - bool sliceFound = false; - uint8_t cfgIdx = 0; - - macSliceCfgRsp->numSliceCfgRsp = schSliceCfgRsp->numSliceCfgRsp; - MAC_ALLOC_SHRABL_BUF(macSliceCfgRsp->listOfSliceCfgRsp, macSliceCfgRsp->numSliceCfgRsp* sizeof(MacSliceRsp*)); - if(macSliceCfgRsp->listOfSliceCfgRsp == NULLP) - { - DU_LOG("\nERROR --> MAC : Memory allocation failedi in fillMacSliceCfgRsp"); - return RFAILED; - } - - for(cfgIdx = 0; cfgIdxnumSliceCfgRsp; cfgIdx++) - { - sliceFound = false; - if(schSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->rsp == RSP_OK) - { - sliceFound = true; - } - - MAC_ALLOC_SHRABL_BUF(macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx], sizeof(SliceRsp)); - if(macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx] == NULLP) - { - DU_LOG("\nERROR --> MAC : Memory allocation failedi in fillMacSliceCfgRsp"); - return RFAILED; - } - - macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->snssai = schSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->snssai; - if(sliceFound == true) - macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->rsp = MAC_DU_APP_RSP_OK; - else - { - macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->rsp = MAC_DU_APP_RSP_NOK; - macSliceCfgRsp->listOfSliceCfgRsp[cfgIdx]->cause = SLICE_NOT_PRESENT; - } - } - return ROK; -} /** * @brief send slice cfg response to duapp. @@ -832,35 +778,6 @@ uint8_t MacSendSliceConfigRsp(MacSliceCfgRsp *macSliceCfgRsp) return (*macDuSliceCfgRspOpts[rspPst.selector])(&rspPst, macSliceCfgRsp); } -/** - * @brief free the slice cfg rsp received from sch. - * - * @details - * - * Function : freeSchSliceCfgRsp - * - * This free the slice cfg rsp received from sch - * - * @param[in] SchSliceCfgRsp *sliceCfgrsp - * @return int - * -# ROK - **/ -void freeSchSliceCfgRsp(SchSliceCfgRsp *schSliceCfgRsp) -{ - uint8_t cfgIdx = 0; - - if(schSliceCfgRsp) - { - if(schSliceCfgRsp->numSliceCfgRsp) - { - for(cfgIdx = 0; cfgIdx< schSliceCfgRsp->numSliceCfgRsp; cfgIdx++) - { - MAC_FREE(schSliceCfgRsp->listOfSliceCfgRsp[cfgIdx], sizeof(SliceRsp)); - } - MAC_FREE(schSliceCfgRsp->listOfSliceCfgRsp, schSliceCfgRsp->numSliceCfgRsp * sizeof(SliceRsp*)); - } - } -} /** * @brief Mac process the slice cfg rsp received from sch. @@ -876,6 +793,7 @@ void freeSchSliceCfgRsp(SchSliceCfgRsp *schSliceCfgRsp) * @return int * -# ROK **/ + uint8_t MacProcSchSliceCfgRsp(Pst *pst, SchSliceCfgRsp *schSliceCfgRsp) { MacSliceCfgRsp *macSliceCfgRsp = NULLP; @@ -888,33 +806,32 @@ uint8_t MacProcSchSliceCfgRsp(Pst *pst, SchSliceCfgRsp *schSliceCfgRsp) DU_LOG("\nERROR --> MAC : Failed to allocate memory in MacProcSchSliceCfgRsp"); return RFAILED; } - if(schSliceCfgRsp->listOfSliceCfgRsp) + macSliceCfgRsp->snssai = schSliceCfgRsp->snssai; + if(schSliceCfgRsp->rsp == RSP_OK) + macSliceCfgRsp->rsp = MAC_DU_APP_RSP_OK; + else { - if(fillMacSliceCfgRsp(schSliceCfgRsp, macSliceCfgRsp) != ROK) - { - DU_LOG("\nERROR --> MAC : Failed to fill the slice cfg response"); - return RFAILED; - } - MacSendSliceConfigRsp(macSliceCfgRsp); + macSliceCfgRsp->rsp = MAC_DU_APP_RSP_NOK; } - freeSchSliceCfgRsp(schSliceCfgRsp); + macSliceCfgRsp->cause = schSliceCfgRsp->cause; + MacSendSliceConfigRsp(macSliceCfgRsp); } return ROK; } /** -* @brief send slice cfg response to duapp. -* -* @details -* -* Function : MacSendSliceReconfigRsp -* -* sends slice cfg response to duapp -* -* @param[in] MacSliceRecfgRsp macSliceRecfgRsp -* @return int -* -# ROK -**/ + * @brief send slice cfg response to duapp. + * + * @details + * + * Function : MacSendSliceReconfigRsp + * + * sends slice cfg response to duapp + * + * @param[in] MacSliceRecfgRsp macSliceRecfgRsp + * @return int + * -# ROK + **/ uint8_t MacSendSliceReconfigRsp(MacSliceRecfgRsp *macSliceRecfgRsp) { Pst rspPst; @@ -952,16 +869,15 @@ uint8_t MacProcSchSliceRecfgRsp(Pst *pst, SchSliceRecfgRsp *schSliceRecfgRsp) return RFAILED; } - if(schSliceRecfgRsp->listOfSliceCfgRsp) + macSliceRecfgRsp->snssai = schSliceRecfgRsp->snssai; + if(schSliceRecfgRsp->rsp == RSP_OK) + macSliceRecfgRsp->rsp = MAC_DU_APP_RSP_OK; + else { - if(fillMacSliceCfgRsp(schSliceRecfgRsp, macSliceRecfgRsp) != ROK) - { - DU_LOG("\nERROR --> MAC : Failed to fill the slice Recfg response"); - return RFAILED; - } - MacSendSliceReconfigRsp(macSliceRecfgRsp); + macSliceRecfgRsp->rsp = MAC_DU_APP_RSP_NOK; } - freeSchSliceCfgRsp(schSliceRecfgRsp); + macSliceRecfgRsp->cause = schSliceRecfgRsp->cause; + MacSendSliceReconfigRsp(macSliceRecfgRsp); } return ROK; }