X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Fkw_dl_ex_ms.c;h=97d5ac36a3b4d1040a36e4853cf7fafe20d080f1;hb=def50dc175cebc67238db5f1acd5ff322a2279bd;hp=fcdbd436809d10283c8827a0dab69734a642a2f9;hpb=be7e4e372cc1d6f12f7af9c6b6d09a7ecedca58c;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/kw_dl_ex_ms.c b/src/5gnrrlc/kw_dl_ex_ms.c index fcdbd4368..97d5ac36a 100755 --- a/src/5gnrrlc/kw_dl_ex_ms.c +++ b/src/5gnrrlc/kw_dl_ex_ms.c @@ -38,18 +38,7 @@ static int RLOG_FILE_ID=195; /* header (.h) include files */ -#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 "cm5.h" /* common timer defines */ -#include "cm_tkns.h" /* common tokens defines */ -#include "cm_mblk.h" /* common memory allocation library defines */ -#include "cm_llist.h" /* common link list defines */ -#include "cm_hash.h" /* common hash list defines */ -#include "cm_lte.h" /* common LTE defines */ +#include "common_def.h" #include "lkw.h" /* LKW defines */ #include "ckw.h" /* CKW defines */ #include "kwu.h" /* KWU defines */ @@ -62,16 +51,6 @@ static int RLOG_FILE_ID=195; /* extern (.x) include files */ -#include "gen.x" /* general */ -#include "ssi.x" /* system services */ - -#include "cm5.x" /* common timer library */ -#include "cm_tkns.x" /* common tokens */ -#include "cm_mblk.x" /* common memory allocation */ -#include "cm_llist.x" /* common link list */ -#include "cm_hash.x" /* common hash list */ -#include "cm_lte.x" /* common LTE includes */ -#include "cm_lib.x" /* common memory allocation library */ #include "lkw.x" /* LKW */ #include "ckw.x" /* CKW */ #include "kwu.x" /* KWU */ @@ -79,24 +58,26 @@ static int RLOG_FILE_ID=195; #include "kw.x" #include "kw_udx.x" #include "kw_dl.x" +#include "du_app_rlc_inf.h" +#include "rlc_mac_inf.h" #include "ctf.h" -PUBLIC S16 kwUtlDlBatchProcPkts(Void); -PUBLIC S16 kwDlBatchProc(Void); +S16 rlcUtlDlBatchProcPkts(Void); +S16 rlcDlBatchProc(Void); #if (defined(MAC_RLC_HARQ_STA_RBUF) && defined(LTE_L2_MEAS)) -U32 isDatReqProcessed; -PUBLIC void kwUtlDlBatchProcHqStaInd ARGS ((Void)); +uint32_t isDatReqProcessed; +void rlcUtlDlBatchProcHqStaInd ARGS ((Void)); #endif #if (defined(L2_L3_SPLIT) && defined(ICC_RECV_TSK_RBUF)) -EXTERN S16 kwDlBatchProcSplit ARGS((Void)); +EXTERN S16 rlcDlBatchProcSplit ARGS((Void)); #endif //UDAY #ifdef L2_OPTMZ -U32 kwAmmStaPduList[512] = {0}; +uint32_t rlcAmmStaPduList[512] = {0}; EXTERN S16 ssGetDBufOfSize ARGS((Region region, Size size, Buffer **dBuf)); #endif -PUBLIC S16 kwDlInitExt ARGS (( Void )); +S16 rlcDlInitExt ARGS (( Void )); /** * @@ -113,16 +94,14 @@ PUBLIC S16 kwDlInitExt ARGS (( Void )); */ #ifdef ANSI -PUBLIC S16 kwDlInitExt +S16 rlcDlInitExt ( ) #else -PUBLIC S16 kwDlInitExt() +S16 rlcDlInitExt() #endif { - TRC2(kwDlInitExt); - - RETVALUE(ROK); + return ROK; } /* kwInitExt */ @@ -155,7 +134,7 @@ PUBLIC S16 kwDlInitExt() * */ #ifdef ANSI -PUBLIC S16 kwDlActvInit +S16 rlcDlActvInit ( Ent ent, /* entity */ Inst inst, /* instance */ @@ -163,48 +142,47 @@ Region region, /* region */ Reason reason /* reason */ ) #else -PUBLIC S16 kwDlActvInit(ent, inst, region, reason) +S16 rlcDlActvInit(ent, inst, region, reason) Ent ent; /* entity */ Inst inst; /* instance */ Region region; /* region */ Reason reason; /* reason */ #endif { - KwCb *tKwCb; - TRC3(kwDlActvInit) + RlcCb *tRlcCb; - if (inst >= KW_MAX_RLC_INSTANCES) + if (inst >= MAX_RLC_INSTANCES) { /* intance greater than MAX instances */ - RETVALUE(RFAILED); + return RFAILED; } - if (kwCb[inst] != NULLP) + if (rlcCb[inst] != NULLP) { - RETVALUE (RFAILED); + return (RFAILED); } - if (SGetSBuf(region, 0, (Data **)&tKwCb, - (Size)sizeof (KwCb)) != ROK) + if (SGetSBuf(region, 0, (Data **)&tRlcCb, + (Size)sizeof (RlcCb)) != ROK) { - RETVALUE(RFAILED); + return RFAILED; } - /* Initialize kwCb */ - KW_MEM_SET(tKwCb, 0, sizeof(KwCb)); + /* Initialize rlcCb */ + RLC_MEM_SET(tRlcCb, 0, sizeof(RlcCb)); /* Initialize task configuration parameters */ - tKwCb->init.ent = ent; /* entity */ - tKwCb->init.inst = inst; /* instance */ - tKwCb->init.region = region; /* static region */ - tKwCb->init.pool = 0; /* static pool */ - tKwCb->init.reason = reason; /* reason */ - tKwCb->init.cfgDone = FALSE; /* configuration done */ - tKwCb->init.acnt = TRUE; /* enable accounting */ - tKwCb->init.usta = TRUE; /* enable unsolicited status */ - tKwCb->init.trc = FALSE; /* enable trace */ - tKwCb->init.procId = SFndProcId(); - - kwCb[inst] = tKwCb; + tRlcCb->init.ent = ent; /* entity */ + tRlcCb->init.inst = inst; /* instance */ + tRlcCb->init.region = region; /* static region */ + tRlcCb->init.pool = 0; /* static pool */ + tRlcCb->init.reason = reason; /* reason */ + tRlcCb->init.cfgDone = FALSE; /* configuration done */ + tRlcCb->init.acnt = TRUE; /* enable accounting */ + tRlcCb->init.usta = TRUE; /* enable unsolicited status */ + tRlcCb->init.trc = FALSE; /* enable trace */ + tRlcCb->init.procId = ODU_GET_PROCID(); + + rlcCb[inst] = tRlcCb; //UDAY #ifdef L2_OPTMZ @@ -215,7 +193,7 @@ Reason reason; /* reason */ SGetMsg(1, 0 , &mBuf); ssGetDBufOfSize(1 , 1800, &bufPtr); SUpdMsg(mBuf, bufPtr, 0); - kwAmmStaPduList[i] = (U32)mBuf; + rlcAmmStaPduList[i] = (uint32_t)mBuf; } #endif /* call external function for intialization */ @@ -225,7 +203,7 @@ Reason reason; /* reason */ - RETVALUE(ROK); + return ROK; } /* kwActvInit */ @@ -250,20 +228,19 @@ Reason reason; /* reason */ pthread_t gRlcTId = 0; #endif #ifdef ANSI -PUBLIC S16 kwDlActvTsk +S16 rlcDlActvTsk ( Pst *pst, /* pst structure */ Buffer *mBuf /* message buffer */ ) #else -PUBLIC S16 kwDlActvTsk(pst, mBuf) +S16 rlcDlActvTsk(pst, mBuf) Pst *pst; /* pst structure */ Buffer *mBuf; /* message buffer */ #endif { S16 ret = ROK; - TRC3(kwDlActvTsk); #ifdef RLC_FREE_RING_BUF gRlcTId = pthread_self(); #endif @@ -277,25 +254,25 @@ Buffer *mBuf; /* message buffer */ #ifdef LCLKW case LKW_EVT_CFG_REQ: { - ret = cmUnpkLkwCfgReq(KwMiLkwCfgReq, pst, mBuf); + ret = unpackRlcConfigReq(RlcMiRlcConfigReq, pst, mBuf); break; } case LKW_EVT_CNTRL_REQ: { - ret = cmUnpkLkwCntrlReq(KwMiLkwCntrlReq, pst, mBuf); + ret = cmUnpkLkwCntrlReq(RlcMiLkwCntrlReq, pst, mBuf); break; } case LKW_EVT_STS_REQ: { - ret = cmUnpkLkwStsReq(KwMiLkwStsReq, pst, mBuf); + ret = cmUnpkLkwStsReq(RlcMiLkwStsReq, pst, mBuf); break; } case LKW_EVT_STA_REQ: { - ret = cmUnpkLkwStaReq(KwMiLkwStaReq, pst, mBuf); + ret = cmUnpkLkwStaReq(RlcMiLkwStaReq, pst, mBuf); break; } /* kw005.201 added support for L2 Measurement */ @@ -304,13 +281,19 @@ Buffer *mBuf; /* message buffer */ #ifdef LCKWU case KWU_EVT_DAT_REQ: /* Data request */ { - ret = cmUnpkKwuDatReq(KwUiKwuDatReq, pst, mBuf); + //ret = cmUnpkKwuDatReq(rlcProcDlData, pst, mBuf); break; } #endif /* LCKWU */ + + case EVENT_DL_RRC_MSG_TRANS_TO_RLC: + { + ret = unpackDlRrcMsgToRlc(RlcProcDlRrcMsgTransfer, pst, mBuf); + break; + } default: - SPutMsg(mBuf); - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + ODU_PUT_MSG_BUF(mBuf); + if (pst->dstInst < MAX_RLC_INSTANCES) { RLOG1(L_ERROR,"Received Invalid Event[%d] from SM", pst->event); @@ -322,7 +305,7 @@ Buffer *mBuf; /* message buffer */ break; } - case ENTKW: + case ENTRLC: { switch(pst->event) @@ -330,55 +313,55 @@ Buffer *mBuf; /* message buffer */ #ifdef LCUDX case UDX_EVT_BND_REQ: /* Bind request */ { - ret = cmUnpkUdxBndReq(KwDlUdxBndReq, pst, mBuf ); + ret = cmUnpkUdxBndReq(rlcDlUdxBndReq, pst, mBuf ); break; } case UDX_EVT_UBND_REQ: /* Bind request */ { - ret = cmUnpkUdxUbndReq(KwDlUdxUbndReq, pst, mBuf ); + ret = cmUnpkUdxUbndReq(rlcDlUdxUbndReq, pst, mBuf ); break; } case UDX_EVT_CFG_REQ: /* Unbind request */ { - ret = cmUnpkUdxCfgReq(KwDlUdxCfgReq, pst, mBuf ); + ret = cmUnpkUdxCfgReq(rlcDlUdxCfgReq, pst, mBuf ); break; } case UDX_EVT_UEIDCHG_REQ: /* Configuration request */ { - ret = cmUnpkUdxUeIdChgReq(KwDlUdxUeIdChgReq, pst, mBuf); + ret = cmUnpkUdxUeIdChgReq(rlcDlUdxUeIdChgReq, pst, mBuf); break; } case UDX_EVT_STA_UPD_REQ: /* Configuration request */ { - ret = cmUnpkUdxStaUpdReq(KwDlUdxStaUpdReq, pst, mBuf); + ret = cmUnpkUdxStaUpdReq(rlcDlUdxStaUpdReq, pst, mBuf); break; } case UDX_EVT_STA_PDU_REQ: /* Configuration request */ { - ret = cmUnpkUdxStaPduReq(KwDlUdxStaPduReq, pst, mBuf); + ret = cmUnpkUdxStaPduReq(rlcDlUdxStaPduReq, pst, mBuf); break; } #ifdef LTE_L2_MEAS case UDX_EVT_L2MEAS_REQ: { - ret = cmUnpkUdxL2MeasReq(KwDlUdxL2MeasReq, pst, mBuf); + ret = cmUnpkUdxL2MeasReq(rlcDlUdxL2MeasReq, pst, mBuf); break; } case UDX_EVT_L2MEAS_SEND_REQ: { - ret = cmUnpkUdxL2MeasSendReq(KwDlUdxL2MeasSendReq, pst, mBuf); + ret = cmUnpkUdxL2MeasSendReq(rlcDlUdxL2MeasSendReq, pst, mBuf); break; } case UDX_EVT_L2MEAS_STOP_REQ: { - ret = cmUnpkUdxL2MeasStopReq(KwDlUdxL2MeasStopReq, pst, mBuf); + ret = cmUnpkUdxL2MeasStopReq(rlcDlUdxL2MeasStopReq, pst, mBuf); break; } #endif @@ -386,13 +369,13 @@ Buffer *mBuf; /* message buffer */ #endif /* LCCKW */ case UDX_EVT_DL_CLEANUP_MEM: { - kwUtlFreeDlMemory(KW_GET_KWCB(pst->dstInst)); + rlcUtlFreeDlMemory(RLC_GET_RLCCB(pst->dstInst)); break; } default: - SPutMsg(mBuf); - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + ODU_PUT_MSG_BUF(mBuf); + if (pst->dstInst < MAX_RLC_INSTANCES) { RLOG1(L_ERROR,"Received Invalid Event[%d] from RLC UL", pst->event); @@ -411,38 +394,38 @@ Buffer *mBuf; /* message buffer */ #ifdef LCKWU case KWU_EVT_BND_REQ: /* Bind request */ { - ret = cmUnpkKwuBndReq(KwUiKwuBndReq, pst, mBuf ); + ret = cmUnpkKwuBndReq(RlcUiKwuBndReq, pst, mBuf ); break; } case KWU_EVT_UBND_REQ: /* Unbind request */ { - ret = cmUnpkKwuUbndReq(KwUiKwuUbndReq, pst, mBuf ); + ret = cmUnpkKwuUbndReq(RlcUiKwuUbndReq, pst, mBuf ); break; } #ifdef L2_L3_SPLIT case KWU_EVT_CPLANE_DAT_REQ: /* C-Plane Data request */ { - ret = cmUnpkKwuDatReq(KwUiKwuDatReq, pst, mBuf); + ret = cmUnpkKwuDatReq(rlcProcDlData, pst, mBuf); break; } #else case KWU_EVT_DAT_REQ: /* Data request */ { - ret = cmUnpkKwuDatReq(KwUiKwuDatReq, pst, mBuf); + //ret = cmUnpkKwuDatReq(rlcProcDlData, pst, mBuf); break; } #endif case KWU_EVT_DISC_SDU_REQ: /* Discard SDU request */ { - ret = cmUnpkKwuDiscSduReq(KwUiKwuDiscSduReq, pst, mBuf); + ret = cmUnpkKwuDiscSduReq(RlcUiKwuDiscSduReq, pst, mBuf); break; } #endif /* LCKWU */ default: - SPutMsg(mBuf); - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + ODU_PUT_MSG_BUF(mBuf); + if (pst->dstInst < MAX_RLC_INSTANCES) { RLOG1(L_ERROR,"Received Invalid Event[%d] from RRC", pst->event); @@ -461,38 +444,38 @@ Buffer *mBuf; /* message buffer */ #ifdef LCKWU case KWU_EVT_BND_REQ: /* Bind request */ { - ret = cmUnpkKwuBndReq(KwUiKwuBndReq, pst, mBuf ); + ret = cmUnpkKwuBndReq(RlcUiKwuBndReq, pst, mBuf ); break; } case KWU_EVT_UBND_REQ: /* Unbind request */ { - ret = cmUnpkKwuUbndReq(KwUiKwuUbndReq, pst, mBuf ); + ret = cmUnpkKwuUbndReq(RlcUiKwuUbndReq, pst, mBuf ); break; } #ifdef L2_L3_SPLIT case KWU_EVT_CPLANE_DAT_REQ: /* C-Plane Data request */ case KWU_EVT_UPLANE_DAT_REQ: /* U-Plane Data request */ { - ret = cmUnpkKwuDatReq(KwUiKwuDatReq, pst, mBuf); + ret = cmUnpkKwuDatReq(rlcProcDlData, pst, mBuf); break; } #else case KWU_EVT_DAT_REQ: /* Data request */ { - ret = cmUnpkKwuDatReq(KwUiKwuDatReq, pst, mBuf); + //ret = cmUnpkKwuDatReq(rlcProcDlData, pst, mBuf); break; } #endif case KWU_EVT_DISC_SDU_REQ: /* Discard SDU request */ { - ret = cmUnpkKwuDiscSduReq(KwUiKwuDiscSduReq, pst, mBuf); + ret = cmUnpkKwuDiscSduReq(RlcUiKwuDiscSduReq, pst, mBuf); break; } default: - SPutMsg(mBuf); - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + ODU_PUT_MSG_BUF(mBuf); + if (pst->dstInst < MAX_RLC_INSTANCES) { RLOG1(L_ERROR,"Received Invalid Event[%d] from PDCP", pst->event); @@ -504,46 +487,46 @@ Buffer *mBuf; /* message buffer */ break; } - case ENTRG: + case ENTMAC: { switch(pst->event) { #ifdef LCRGU case EVTRGUBNDCFM: /* Bind request */ { - ret = cmUnpkRguBndCfm(KwLiRguBndCfm, pst, mBuf ); + ret = cmUnpkRguBndCfm(RlcLiRguBndCfm, pst, mBuf ); break; } - case EVTSCHREP: /* Dedicated Channel Status Response */ + case EVENT_SCHED_RESULT_TO_RLC: { - ret = unpackSchedRep(RlcMacProcSchedRep, pst, mBuf); + ret = unpackSchedResultRpt(RlcProcSchedResultRpt, pst, mBuf); break; } /* kw005.201 added support for L2 Measurement */ #ifdef LTE_L2_MEAS case EVTRGUHQSTAIND: /* Harq status indication */ { - ret = cmUnpkRguHqStaInd(KwLiRguHqStaInd, pst, mBuf); + ret = cmUnpkRguHqStaInd(RlcLiRguHqStaInd, pst, mBuf); break; } #endif case EVTRGUFLOWCNTRLIND: { - ret = cmUnpkRguFlowCntrlInd(KwLiRguFlowCntrlInd,pst,mBuf); + ret = cmUnpkRguFlowCntrlInd(RlcLiRguFlowCntrlInd,pst,mBuf); break; } #endif /* LCRGU */ #ifdef RLC_STA_PROC_IN_MAC/* RLC Status PDU Processing */ case UDX_EVT_STA_UPD_REQ: /* Configuration request */ { - ret = cmUnpkUdxStaUpdReq(KwDlUdxStaUpdReq, pst, mBuf); + ret = cmUnpkUdxStaUpdReq(rlcDlUdxStaUpdReq, pst, mBuf); break; } #endif default: - SPutMsg(mBuf); - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + ODU_PUT_MSG_BUF(mBuf); + if (pst->dstInst < MAX_RLC_INSTANCES) { RLOG1(L_ERROR,"Received Invalid Event[%d] from MAC", pst->event); @@ -554,17 +537,17 @@ Buffer *mBuf; /* message buffer */ break; } #ifdef SS_RBUF - case ENTTF: + case ENTLWRMAC: { switch(pst->event) { case EVTCTFBTCHPROCTICK: { - kwUtlDlBatchProcPkts(); + rlcUtlDlBatchProcPkts(); break; } } - SPutMsg(mBuf); + ODU_PUT_MSG_BUF(mBuf); break; } #endif @@ -575,24 +558,24 @@ Buffer *mBuf; /* message buffer */ case KWU_EVT_TTI_IND: { #if (defined(L2_L3_SPLIT) && defined(ICC_RECV_TSK_RBUF)) - kwDlBatchProcSplit(); + rlcDlBatchProcSplit(); #else #if defined(PDCP_RLC_DL_RBUF) - kwDlBatchProc(); + rlcDlBatchProc(); #endif #endif #if (defined(SPLIT_RLC_DL_TASK) && defined(MAC_RLC_HARQ_STA_RBUF) && defined(LTE_L2_MEAS)) - //KwDlHarqStaBatchProc(); - kwUtlDlBatchProcHqStaInd(); + //RlcDlHarqStaBatchProc(); + rlcUtlDlBatchProcHqStaInd(); #endif #ifndef KWSELFPSTDLCLEAN /* Revanth_chg */ /* Moving Cleanup from self post event to TTI event */ - kwUtlFreeDlMem(); + rlcUtlFreeDlMem(); #endif - SPutMsg(mBuf); + ODU_PUT_MSG_BUF(mBuf); break; } } @@ -602,20 +585,20 @@ Buffer *mBuf; /* message buffer */ default: { - if (pst->dstInst < KW_MAX_RLC_INSTANCES) + if (pst->dstInst < MAX_RLC_INSTANCES) { - /*KwCb *tKwCb = KW_GET_KWCB(pst->dstInst);*/ + /*RlcCb *tRlcCb = RLC_GET_RLCCB(pst->dstInst);*/ RLOG1(L_ERROR, "Received Invalid Source Entity[%d]", pst->event); } - SPutMsg(mBuf); + ODU_PUT_MSG_BUF(mBuf); ret = RFAILED; break; } } - SExitTsk(); + ODU_EXIT_TASK(); - RETVALUE(ret); + return (ret); } /* kwActvTsk */