# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
-*******************************************************************************/
-
-#include "envopt.h" /* Environment options */
-#include "envdep.h" /* Environment dependent */
-#include "envind.h" /* Environment independent */
-#include "gen.h" /* General */
-#include "ssi.h" /* System services */
-#include "ss_queue.h"
-#include "ss_task.h"
-#include "ss_msg.h"
-
-#include "gen.x" /* general */
-#include "ssi.x" /* system services */
-#include "cm_tkns.x" /* Common Token Definitions */
-#include "cm_llist.x" /* Common Link List Definitions */
-#include "cm_lib.x" /* Common Library Definitions */
-#include "cm_hash.x" /* Common Hash List Definitions */
-#include "cm_lte.x" /* Common LTE Defines */
-
-#include "du_cfg.h"
+ *******************************************************************************/
+
+#include "common_def.h"
#include "du_app_mac_inf.h"
-#include "cm.h"
/**************************************************************************
* @brief Function to pack Loose Coupled
* RFAILED - failure
*
***************************************************************************/
-int packMacCellCfg(Pst *pst, MacCellCfg *macCellCfg)
+uint8_t packMacCellCfg(Pst *pst, MacCellCfg *macCellCfg)
{
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
/* we are now implemented only light wieght lossely coupled interface */
return RFAILED;
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
Buffer *mBuf = NULLP;
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- return RFAILED;
+ return RFAILED;
}
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)macCellCfg, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)macCellCfg, mBuf);
DU_LOG("\nDU-APP : MAC CELL config sent");
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
return ROK;
}
* RFAILED - failure
*
***************************************************************************/
-int unpackDuMacCellCfg(
- DuMacCellCfgReq func,
- Pst *pst,
- Buffer *mBuf)
+uint8_t unpackDuMacCellCfg(DuMacCellCfgReq func, Pst *pst, Buffer *mBuf)
{
- U16 ret = ROK;
+ uint16_t ret = ROK;
MacCellCfg *macCellCfg;
- if(pst->selector == DU_SELECTOR_LWLC)
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&macCellCfg, mBuf);
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&macCellCfg, mBuf);
ret = (*func)(pst, macCellCfg);
}
else
/* only LWLC is implemented now */
ret = ROK;
}
-
+
return ret;
}
* RFAILED - failure
*
***************************************************************************/
-int packMacCellCfgCfm(Pst *pst, MacCellCfgCfm *macCellCfgCfm)
+uint8_t packMacCellCfgCfm(Pst *pst, MacCellCfgCfm *macCellCfgCfm)
{
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
Buffer *mBuf = NULLP;
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- return RFAILED;
+ return RFAILED;
}
/* pack the transaction ID in CNF structure */
- CMCHKPK(SPkU8, macCellCfgCfm->rsp, mBuf);
- CMCHKPK(SPkU16, macCellCfgCfm->transId, mBuf);
+ CMCHKPK(oduUnpackUInt16, macCellCfgCfm->cellId, mBuf);
+ CMCHKPK(oduUnpackUInt8, macCellCfgCfm->rsp, mBuf);
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
/* only LC is supported */
return RFAILED;
* RFAILED - failure
*
***************************************************************************/
-int unpackMacCellCfgCfm(
- DuMacCellCfgCfm func,
- Pst *pst,
- Buffer *mBuf)
+uint8_t unpackMacCellCfgCfm(DuMacCellCfgCfm func, Pst *pst, Buffer *mBuf)
{
MacCellCfgCfm macCellCfgCfm;
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
/* unpack the transaction ID in CNF structure */
- CMCHKUNPK(SUnpkU16, &(macCellCfgCfm.transId), mBuf);
- CMCHKUNPK(SUnpkU8, &(macCellCfgCfm.rsp), mBuf);
-
+ CMCHKUNPK(oduPackUInt8, &(macCellCfgCfm.rsp), mBuf);
+ CMCHKUNPK(oduPackUInt16, &(macCellCfgCfm.cellId), mBuf);
return (*func)(pst, &macCellCfgCfm);
}
else
{
/* only loose coupling is suported */
- return ROK;
+ return ROK;
}
}
*
* @details
*
- * Function : packMacCellStartReq
+ * Function : packMacCellStart
*
* Functionality:
* Packs and Sends Cell Start Request to MAC
*
* @params[in] Post structure pointer
- * MacCellStartInfo pointer
+ * Cell Id
* @return ROK - success
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacCellStartReq(Pst *pst, MacCellStartInfo *cellStartInfo)
+uint8_t packMacCellStart(Pst *pst, OduCellId *cellId)
{
- Buffer *mBuf = NULLP;
+ Buffer *mBuf = NULLP;
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
/* Loose coupling not supported */
return RFAILED;
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- DU_LOG("\nDU APP : Memory allocation failed for cell start req pack");
- return RFAILED;
+ DU_LOG("\nDU APP : Memory allocation failed for cell start req pack");
+ return RFAILED;
}
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)cellStartInfo, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)cellId, mBuf);
}
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
/*******************************************************************
*
* @details
*
- * Function : unpackMaCellStartReq
+ * Function : unpackMaCellStart
*
* Functionality:
* Unpacks MAC Cell Start Request from DU APP
*
* @params[in] Function pointer of cell start request handler
* Post structure pointer
- * Cell Start Request Info Pointer
+ * Message Buffer
* @return ROK - success
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacCellStartReq(DuMacCellStartReq func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacCellStart(DuMacCellStart func, Pst *pst, Buffer *mBuf)
{
- MacCellStartInfo *cellStartInfo;
-
- if(pst->selector == DU_SELECTOR_LWLC)
+ OduCellId *cellId;
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&cellStartInfo, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, cellStartInfo);
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&cellId, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, cellId);
}
else
{
/* Nothing to do for loose coupling */
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
return ROK;
}
}
*
* @details
*
- * Function : packMacCellStopReq
+ * Function : packMacCellStop
*
* Functionality:
* Packs and Send cell stop request to MAC
*
* @params[in] Post structure pointer
- * Cell stop info structure
+ * Cell Id
* @return ROK - success
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacCellStopReq(Pst *pst, MacCellStopInfo *cellStopInfo)
+uint8_t packMacCellStop(Pst *pst, OduCellId *cellId)
{
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
/* Loose coupling not supported */
return RFAILED;
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
Buffer *mBuf = NULLP;
-
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- DU_LOG("\nDU APP : Memory allocation failed for cell stop req pack");
- return RFAILED;
+ DU_LOG("\nDU APP : Memory allocation failed for cell stop req pack");
+ return RFAILED;
}
-
+
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)cellStopInfo, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)cellId, mBuf);
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
return ROK;
}
*
* @details
*
- * Function : unpackMaCellStopReq
+ * Function : unpackMaCellStop
*
* Functionality:
* Unpacks cell stop request from DU APP
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacCellStopReq(DuMacCellStopReq func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacCellStop(DuMacCellStop func, Pst *pst, Buffer *mBuf)
{
- MacCellStopInfo *cellStopInfo;
-
- if(pst->selector == DU_SELECTOR_LWLC)
+ OduCellId *cellId;
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&cellStopInfo, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, cellStopInfo);
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&cellId, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, cellId);
}
else
{
/* Nothing to do for loose coupling */
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
return ROK;
}
}
/*******************************************************************
*
- * @brief Packs and Sends slot ind from MAC to DUAPP
+ * @brief Packs and Sends cell up ind from MAC to DUAPP
*
* @details
*
- * Function : packMacSlotInd
+ * Function : packMacCellUpInd
*
* Functionality:
- * Packs and Sends slot ind from MAC to DUAPP
+ * Packs and Sends cell up ind from MAC to DUAPP
*
* @params[in] Post structure pointer
- * Slot Info pointer
+ * Cell Id
* @return ROK - success
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacSlotInd(Pst *pst, SlotInfo *slotInfo )
+uint8_t packMacCellUpInd(Pst *pst, OduCellId *cellId)
{
Buffer *mBuf = NULLP;
-
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- DU_LOG("\nDU APP : Memory allocation failed for cell start req pack");
+ DU_LOG("\nDU APP : Memory allocation failed for packMacCellUpInd");
return RFAILED;
}
-
- if(pst->selector == DU_SELECTOR_LC)
- {
- CMCHKPK(SPkU16, slotInfo->cellId, mBuf);
- CMCHKPK(SPkU16, slotInfo->sfn, mBuf);
- CMCHKPK(SPkU16, slotInfo->slot, mBuf);
- CM_FREE_SHRABL_BUF(pst->region, pst->pool, slotInfo, sizeof(SlotInfo));
- slotInfo = NULL;
+ if(pst->selector == ODU_SELECTOR_LC)
+ {
+ CMCHKPK(oduUnpackUInt16, cellId->cellId, mBuf);
+ CM_FREE_SHRABL_BUF(pst->region, pst->pool, cellId, sizeof(OduCellId));
+ cellId = NULL;
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)slotInfo, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)cellId, mBuf);
}
else
{
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
}
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst, mBuf);
}
/*******************************************************************
*
- * @brief Unpacks slot indication from MAC
+ * @brief Unpacks cell up indication from MAC
*
* @details
*
- * Function : unpackMacSlotInd
+ * Function : unpackMacCellUpInd
*
* Functionality:
- * Unpacks slot indication from MAC
+ * Unpacks cell up indication from MAC
*
* @params[in] Pointer to Handler
* Post structure pointer
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacSlotInd(DuMacSlotInd func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacCellUpInd(DuMacCellUpInd func, Pst *pst, Buffer *mBuf)
{
- if(pst->selector == DU_SELECTOR_LWLC)
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
- SlotInfo *slotInfo;
+ OduCellId *cellId;
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&slotInfo, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, slotInfo);
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&cellId, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, cellId);
}
- else if(pst->selector == DU_SELECTOR_LC)
+ else if(pst->selector == ODU_SELECTOR_LC)
{
- SlotInfo slotInfo;
-
- CMCHKUNPK(SUnpkU16, &(slotInfo.slot), mBuf);
- CMCHKUNPK(SUnpkU16, &(slotInfo.sfn), mBuf);
- CMCHKUNPK(SUnpkU16, &(slotInfo.cellId), mBuf);
-
- SPutMsg(mBuf);
- return (*func)(pst, &slotInfo);
-
+ OduCellId cellId;
+ CMCHKUNPK(oduPackUInt16, &cellId.cellId, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, &cellId);
}
else
{
/* Nothing to do for loose coupling */
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
return ROK;
}
return ROK;
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacStopInd(Pst *pst, MacCellStopInfo *cellStopId)
+uint8_t packMacStopInd(Pst *pst, OduCellId *cellId)
{
Buffer *mBuf = NULLP;
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
DU_LOG("\nDU APP : Memory allocation failed for stop Ind pack");
return RFAILED;
}
- if(pst->selector == DU_SELECTOR_LC)
+ if(pst->selector == ODU_SELECTOR_LC)
{
/*pack the payload here*/
DU_LOG("\nDU APP : Packed CellId");
- CMCHKPK(SPkU16, cellStopId->cellId, mBuf);
- CM_FREE_SHRABL_BUF(pst->region, pst->pool, cellStopId, sizeof(MacCellStopInfo));
- cellStopId = NULL;
+ CMCHKPK(oduUnpackUInt16, cellId->cellId, mBuf);
+ CM_FREE_SHRABL_BUF(pst->region, pst->pool, cellId, sizeof(OduCellId));
+ cellId = NULL;
}
- else if(pst->selector == DU_SELECTOR_LWLC)
+ else if(pst->selector == ODU_SELECTOR_LWLC)
{
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)cellStopId, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)cellId, mBuf);
}
else
{
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
}
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
/*******************************************************************
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacStopInd(DuMacStopInd func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacStopInd(DuMacStopInd func, Pst *pst, Buffer *mBuf)
{
- if(pst->selector == DU_SELECTOR_LWLC)
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
- MacCellStopInfo *cellStopId;
+ OduCellId *cellId;
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&cellStopId, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, cellStopId);
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&cellId, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, cellId);
}
- else if(pst->selector == DU_SELECTOR_LC)
+ else if(pst->selector == ODU_SELECTOR_LC)
{
- MacCellStopInfo cellStopId;
- CMCHKUNPK(SUnpkU16, &(cellStopId.cellId), mBuf);
+ OduCellId cellId;
+ CMCHKUNPK(oduPackUInt16, &(cellId.cellId), mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, &cellStopId);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, &cellId);
}
else
{
/* Nothing to do for loose coupling */
- SPutMsg(mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
return ROK;
}
return ROK;
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacUlCcchInd(Pst *pst, UlCcchIndInfo *ulCcchIndInfo)
+uint8_t packMacUlCcchInd(Pst *pst, UlCcchIndInfo *ulCcchIndInfo)
{
Buffer *mBuf = NULLP;
-
- if(pst->selector == DU_SELECTOR_LWLC)
- {
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
- {
- DU_LOG("\nMAC : Memory allocation failed at packMacUlCcchInd");
- return RFAILED;
- }
- /* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)ulCcchIndInfo, mBuf);
- }
- else
- {
- DU_LOG("\nMAC: Only LWLC supported for UL CCCH Ind ");
- return RFAILED;
- }
-
- return SPstTsk(pst,mBuf);
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
+ {
+ DU_LOG("\nMAC : Memory allocation failed at packMacUlCcchInd");
+ return RFAILED;
+ }
+ /* pack the address of the structure */
+ CMCHKPK(oduPackPointer,(PTR)ulCcchIndInfo, mBuf);
+ }
+ else
+ {
+ DU_LOG("\nMAC: Only LWLC supported for UL CCCH Ind ");
+ return RFAILED;
+ }
+
+ return ODU_POST_TASK(pst,mBuf);
}
/*******************************************************************
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacUlCcchInd(DuMacUlCcchInd func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacUlCcchInd(DuMacUlCcchInd func, Pst *pst, Buffer *mBuf)
{
- if(pst->selector == DU_SELECTOR_LWLC)
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
UlCcchIndInfo *ulCcchIndInfo;
/* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&ulCcchIndInfo, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, ulCcchIndInfo);
- }
- else
- {
- /* Nothing to do for other selectors */
- DU_LOG("\n Only LWLC supported for UL CCCH Ind ");
- SPutMsg(mBuf);
- }
- return RFAILED;
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&ulCcchIndInfo, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, ulCcchIndInfo);
+ }
+ else
+ {
+ /* Nothing to do for other selectors */
+ DU_LOG("\n Only LWLC supported for UL CCCH Ind ");
+ ODU_PUT_MSG_BUF(mBuf);
+ }
+ return RFAILED;
}
/*******************************************************************
* RFAILED - failure
*
* ****************************************************************/
-uint16_t packMacDlCcchInd(Pst *pst, DlCcchIndInfo *dlCcchIndInfo)
+uint8_t packMacDlCcchInd(Pst *pst, DlCcchIndInfo *dlCcchIndInfo)
{
- Buffer *mBuf = NULLP;
-
- if(pst->selector == DU_SELECTOR_LWLC)
- {
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
- {
- DU_LOG("\nMAC : Memory allocation failed at packMacDlCcchInd");
- return RFAILED;
- }
- /* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)dlCcchIndInfo, mBuf);
- }
- else
- {
- DU_LOG("\nDU APP: Only LWLC supported for DL CCCH Ind ");
- return RFAILED;
- }
-
- return SPstTsk(pst,mBuf);
+ Buffer *mBuf = NULLP;
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
+ {
+ DU_LOG("\nMAC : Memory allocation failed at packMacDlCcchInd");
+ return RFAILED;
+ }
+ /* pack the address of the structure */
+ CMCHKPK(oduPackPointer,(PTR)dlCcchIndInfo, mBuf);
+ }
+ else
+ {
+ DU_LOG("\nDU APP: Only LWLC supported for DL CCCH Ind ");
+ return RFAILED;
+ }
+
+ return ODU_POST_TASK(pst,mBuf);
}
/*******************************************************************
* RFAILED - failure
*
* ****************************************************************/
-uint16_t unpackMacDlCcchInd(DuMacDlCcchInd func, Pst *pst, Buffer *mBuf)
+uint8_t unpackMacDlCcchInd(DuMacDlCcchInd func, Pst *pst, Buffer *mBuf)
{
- if(pst->selector == DU_SELECTOR_LWLC)
- {
- DlCcchIndInfo *dlCcchIndInfo;
-
- /* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&dlCcchIndInfo, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, dlCcchIndInfo);
- }
- else
- {
- /* Nothing to do for other selectors */
- DU_LOG("\n Only LWLC supported for DL CCCH Ind ");
- SPutMsg(mBuf);
- }
-
- return RFAILED;
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ DlCcchIndInfo *dlCcchIndInfo;
+
+ /* unpack the address of the structure */
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&dlCcchIndInfo, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, dlCcchIndInfo);
+ }
+ else
+ {
+ /* Nothing to do for other selectors */
+ DU_LOG("\n Only LWLC supported for DL CCCH Ind ");
+ ODU_PUT_MSG_BUF(mBuf);
+ }
+
+ return RFAILED;
}
/*******************************************************************
uint8_t packDuMacUeCreateReq(Pst *pst, MacUeCfg *ueCfg)
{
Buffer *mBuf = NULLP;
-
- if(pst->selector == DU_SELECTOR_LWLC)
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
{
- if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
{
- DU_LOG("\nMAC : Memory allocation failed at packDuMacUeCreateReq");
- return RFAILED;
+ DU_LOG("\nMAC : Memory allocation failed at packDuMacUeCreateReq");
+ return RFAILED;
}
/* pack the address of the structure */
- CMCHKPK(cmPkPtr,(PTR)ueCfg, mBuf);
+ CMCHKPK(oduPackPointer,(PTR)ueCfg, mBuf);
}
else
{
return RFAILED;
}
- return SPstTsk(pst,mBuf);
+ return ODU_POST_TASK(pst,mBuf);
}
/*******************************************************************
* ****************************************************************/
uint8_t unpackMacUeCreateReq(DuMacUeCreateReq func, Pst *pst, Buffer *mBuf)
{
- if(pst->selector == DU_SELECTOR_LWLC)
- {
- MacUeCfg *ueCfg;
-
- /* unpack the address of the structure */
- CMCHKUNPK(cmUnpkPtr, (PTR *)&ueCfg, mBuf);
- SPutMsg(mBuf);
- return (*func)(pst, ueCfg);
- }
- else
- {
- /* Nothing to do for other selectors */
- DU_LOG("\n Only LWLC supported for UE Create Request ");
- SPutMsg(mBuf);
- }
-
- return RFAILED;
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ MacUeCfg *ueCfg;
+
+ /* unpack the address of the structure */
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&ueCfg, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, ueCfg);
+ }
+ else
+ {
+ /* Nothing to do for other selectors */
+ DU_LOG("\n Only LWLC supported for UE Create Request ");
+ ODU_PUT_MSG_BUF(mBuf);
+ }
+
+ return RFAILED;
}
+
+/*******************************************************************
+ *
+ * @brief Pack and send UE config response from MAC to DU APP
+ *
+ * @details
+ *
+ * Function : packDuMacUeCfgRsp
+ *
+ * Functionality:
+ * Pack and send UE config response from MAC to DU APP
+ *
+ * @params[in]
+ * @return ROK - success
+ * RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packDuMacUeCfgRsp(Pst *pst, MacUeCfgRsp *cfgRsp)
+{
+ Buffer *mBuf = NULLP;
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
+ {
+ DU_LOG("\nMAC : Memory allocation failed at packDuMacUeCfgRsp");
+ return RFAILED;
+ }
+ /* pack the address of the structure */
+ CMCHKPK(oduPackPointer,(PTR)cfgRsp, mBuf);
+ }
+ else
+ {
+ DU_LOG("\nMAC: Only LWLC supported for packDuMacUeCfgRsp");
+ return RFAILED;
+ }
+
+ return ODU_POST_TASK(pst,mBuf);
+}
+
+/*******************************************************************
+ *
+ * @brief Unpack UE Config Response from MAC to DU APP
+ *
+ * @details
+ *
+ * Function : unpackDuMacUeCfgRsp
+ *
+ * Functionality: Unpack UE Config Response from MAC to DU APP
+ *
+ * @params[in]
+ * @return ROK - success
+ * RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t unpackDuMacUeCfgRsp(MacDuUeCfgRspFunc func, Pst *pst, Buffer *mBuf)
+{
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ MacUeCfgRsp *cfgRsp = NULLP;
+
+ /* unpack the address of the structure */
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&cfgRsp, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, cfgRsp);
+ }
+
+ ODU_PUT_MSG_BUF(mBuf);
+ return RFAILED;
+}
+
+/*******************************************************************
+ *
+ * @brief Packs and Sends UE Reconig Request from DUAPP to MAC
+ *
+ * @details
+ *
+ * Function : packDuMacUeReconfigReq
+ *
+ * Functionality:
+ * Packs and Sends UE Reconfig Request from DUAPP to MAC
+ *
+ *
+ * @params[in] Post structure pointer
+ * MacUeCfg pointer
+ * @return ROK - success
+ * RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packDuMacUeReconfigReq(Pst *pst, MacUeCfg *ueCfg)
+{
+ Buffer *mBuf = NULLP;
+
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
+ {
+ DU_LOG("\nMAC : Memory allocation failed at packDuMacUeReconfigReq");
+ return RFAILED;
+ }
+ /* pack the address of the structure */
+ CMCHKPK(oduPackPointer,(PTR)ueCfg, mBuf);
+ }
+ else
+ {
+ DU_LOG("\nMAC: Only LWLC supported for packDuMacUeReconfigReq");
+ return RFAILED;
+ }
+
+ return ODU_POST_TASK(pst,mBuf);
+}
+/*******************************************************************
+ *
+ * @brief Unpacks UE Reconfig Request received from DU APP
+ *
+ * @details
+ *
+ * Function : unpackMacUeReconfigReq
+ *
+ * Functionality:
+ * Unpacks UE Reconfig Request received from DU APP
+ *
+ * @params[in] Pointer to Handler
+ * Post structure pointer
+ * Message Buffer
+ * @return ROK - success
+ * RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t unpackMacUeReconfigReq(DuMacUeReconfigReq func, Pst *pst, Buffer *mBuf)
+{
+ if(pst->selector == ODU_SELECTOR_LWLC)
+ {
+ MacUeCfg *ueCfg;
+
+ /* unpack the address of the structure */
+ CMCHKUNPK(oduUnpackPointer, (PTR *)&ueCfg, mBuf);
+ ODU_PUT_MSG_BUF(mBuf);
+ return (*func)(pst, ueCfg);
+ }
+ else
+ {
+ /* Nothing to do for other selectors */
+ DU_LOG("\n Only LWLC supported for UE Create Request ");
+ ODU_PUT_MSG_BUF(mBuf);
+ }
+
+ return RFAILED;
+}
+
/**********************************************************************
- End of file
-**********************************************************************/
+ End of file
+ **********************************************************************/