X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Fmac_stub.c;h=a502136f91e83393cbe010c6e86b0fde9182665f;hb=def50dc175cebc67238db5f1acd5ff322a2279bd;hp=9b2fb092b716dc2ab42bfef1738763ea806dd5b9;hpb=6b44407d464a5a4e060999255233a7cfe78bb0fa;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/mac_stub.c b/src/5gnrrlc/mac_stub.c index 9b2fb092b..a502136f9 100644 --- a/src/5gnrrlc/mac_stub.c +++ b/src/5gnrrlc/mac_stub.c @@ -18,104 +18,23 @@ #ifdef EGTP_TEST #include "common_def.h" -#include "mac_stub.h" -uint8_t rlcDatSn = 0; -uint64_t ulDatNum = 0; - -PUBLIC S16 macStubBOStatus(Pst *pst, SpId spId, RlcMacBOStatus *boSta) -{ - Pst rspPst; - RlcMacSchedRepInfo *schRep; - - DU_LOG("\nMAC : Received BO status from RLC"); - -// SGetSBuf(pst->region, pst->pool, (Data **)&rspPst, sizeof(Pst)); - - rspPst.selector = ODU_SELECTOR_TC; - rspPst.srcEnt = pst->dstEnt; - rspPst.dstEnt = pst->srcEnt; - rspPst.dstInst = pst->srcInst; - rspPst.dstProcId = pst->srcProcId; - rspPst.srcProcId = pst->dstProcId; - rspPst.region = pst->region; - rspPst.pool = pst->pool; - - /* Filling Scheduling Report */ - RLC_SHRABL_STATIC_BUF_ALLOC(pst->region, pst->pool, schRep, sizeof(RlcMacSchedRepInfo)); - - schRep->cellId = boSta->cellId; - schRep->rnti = boSta->rnti; - schRep->nmbLch = 1; - schRep->lchSta[0].commCh = boSta->commCh; - schRep->lchSta[0].lchStaInd.lcId = boSta->lcId; - schRep->lchSta[0].lchStaInd.totBufSize = boSta->bo + 5; /* Extra buffer space including RLC and MAC Header size */ - - DU_LOG("\nMAC : Sending scheduling report to RLC"); - - RlcMacProcSchedRep(&rspPst, 1, schRep); - - return ROK; - -} +#define DU_IP_V4_ADDR "192.168.130.81" +#define CU_IP_V4_ADDR "192.168.130.82" -PUBLIC S16 macStubSendDlData(Pst *pst, SpId spId, RlcMacData *dlData) -{ - U32 availmem; - - Pst rspPst; - Buffer *mBuf; - RlcMacData *ulData; - - DU_LOG("\nMAC_STUB : Received DL data from RLC to be sent to PHY"); - - SPutMsg(dlData->pduInfo[0].pduBuf); - dlData->pduInfo[0].pduBuf = NULL; - -#if 0 - RLC_FREE_SHRABL_BUF(pst->region, pst->pool, - dlData, sizeof(RlcMacData)); -{ - RLC_ALLOC_SHRABL_BUF(pst->region, pst->pool, - ulData, sizeof(RlcMacData)); - - SRegInfoShow(2, &availmem); - cmMemcpy((U8 *)ulData, (U8 *)dlData, sizeof(RlcMacData)); -#endif - - ulData = dlData; - SGetMsg(pst->region, pst->pool, &mBuf); - macStubBuildUlData(mBuf); - ulData->pduInfo[0].pduBuf = mBuf; - - /* Fill response post */ - rspPst.selector = ODU_SELECTOR_TC; - rspPst.srcEnt = pst->dstEnt; - rspPst.dstEnt = pst->srcEnt; - rspPst.dstInst = pst->srcInst; - rspPst.dstProcId = pst->srcProcId; - rspPst.srcProcId = pst->dstProcId; - rspPst.region = pst->region; - rspPst.pool = pst->pool; - - ulDatNum++; - DU_LOG("\nMAC_STUB : UL data number %d", ulDatNum); - RlcProcUlData(&rspPst, 1, ulData); - return ROK; -} +uint8_t rlcDatSn = 0; void macStubBuildUlData(Buffer *mBuf) { char data[30] = "This is EGTP data from DU"; int datSize = 30; - U32 availmem; - SAddPstMsgMult((Data *)data, datSize, mBuf); + ODU_ADD_POST_MSG_MULT((Data *)data, datSize, mBuf); /* filling IPv4 header */ CmIpv4Hdr ipv4Hdr; MsgLen mLen; - U32 ipv4_du, ipv4_cu; + uint32_t ipv4_du, ipv4_cu; cmInetAddr((S8*)DU_IP_V4_ADDR, &ipv4_du); cmInetAddr((S8*)CU_IP_V4_ADDR, &ipv4_cu); @@ -123,12 +42,12 @@ void macStubBuildUlData(Buffer *mBuf) mLen = 0; SFndLenMsg(mBuf, &mLen); - cmMemset((U8 *)&ipv4Hdr, 0, sizeof(CmIpv4Hdr)); + memset(&ipv4Hdr, 0, sizeof(CmIpv4Hdr)); ipv4Hdr.length = CM_IPV4_HDRLEN + mLen; ipv4Hdr.hdrVer = 0x45; ipv4Hdr.proto = 1; - ipv4Hdr.srcAddr = CM_INET_NTOH_U32(ipv4_du); - ipv4Hdr.destAddr = CM_INET_NTOH_U32(ipv4_cu); + ipv4Hdr.srcAddr = CM_INET_NTOH_UINT32(ipv4_du); + ipv4Hdr.destAddr = CM_INET_NTOH_UINT32(ipv4_cu); /* Packing IPv4 header into buffer */ S16 ret, cnt, idx; @@ -137,8 +56,8 @@ void macStubBuildUlData(Buffer *mBuf) /* initialize locals */ cnt = 0; - cmMemset(revPkArray, 0, CM_IPV4_HDRLEN); - cmMemset(pkArray, 0, CM_IPV4_HDRLEN); + memset(revPkArray, 0, CM_IPV4_HDRLEN); + memset(pkArray, 0, CM_IPV4_HDRLEN); /* Pack Header Version */ pkArray[cnt++] = ipv4Hdr.hdrVer; @@ -183,18 +102,10 @@ void macStubBuildUlData(Buffer *mBuf) revPkArray[idx] = pkArray[CM_IPV4_HDRLEN - idx -1]; /* this function automatically reverses revPkArray */ - ret = SAddPreMsgMult(revPkArray, (MsgLen)cnt, mBuf); + ret = ODU_ADD_PRE_MSG_MULT(revPkArray, (MsgLen)cnt, mBuf); + + ODU_ADD_PRE_MSG_MULT((Data *)&rlcDatSn, sizeof(uint8_t), mBuf); - SAddPreMsgMult((Data *)&rlcDatSn, sizeof(uint8_t), mBuf); -#if 0 - SRegInfoShow(0, &availmem); - SRegInfoShow(1, &availmem); - SRegInfoShow(2, &availmem); - SRegInfoShow(3, &availmem); - SRegInfoShow(4, &availmem); -#endif - //rlcDatSn++; - // if(rlcDatSn++ >15 ) rlcDatSn = 0;