X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Frg_ex_ms.c;h=0319cc2ce0d949ea66ea6aaf48d7a216ec3cad12;hb=53088c437fc01fb772f221e228ba7475fb5131d5;hp=0c8eb8a2e585a047c5fa4de074caaf7edec1ac92;hpb=5625a52ad68f6ad93684e68bbbdbaef0d462cf9a;p=o-du%2Fl2.git diff --git a/src/5gnrmac/rg_ex_ms.c b/src/5gnrmac/rg_ex_ms.c index 0c8eb8a2e..0319cc2ce 100755 --- a/src/5gnrmac/rg_ex_ms.c +++ b/src/5gnrmac/rg_ex_ms.c @@ -33,45 +33,31 @@ registered with SSI during the LTE MAC Task initialization. */ /* header include files -- defines (.h) */ -#include "envopt.h" /* environment options */ -#include "envdep.h" /* environment dependent */ -#include "envind.h" /* environment independent */ -#include "gen.h" /* general layer */ -#include "ssi.h" /* system services */ -#include "cm5.h" /* common timers defines */ -#include "cm_hash.h" /* common hash list defines */ -#include "cm_llist.h" /* common linked list defines */ -#include "cm_mblk.h" /* memory management */ -#include "cm_tkns.h" /* common tokens */ -#include "cm_lte.h" /* common tokens */ +#include "common_def.h" #include "rgu.h" /* RGU defines */ #include "tfu.h" /* RGU defines */ #include "lrg.h" /* layer management defines for LTE-MAC */ +#include "rgr.h" /* layer management defines for LTE-MAC */ #include "crg.h" /* CRG interface includes */ #include "rg_sch_inf.h" /* SCH interface includes */ #include "rg_prg.h" /* PRG interface includes */ #include "rg_env.h" /* customisable defines and macros for LTE-MAC */ #include "rg.h" /* defines and macros for MAC */ +#include "rgr.h" /* defines and macros for SCH */ /* header/extern include files (.x) */ -#include "gen.x" /* general layer typedefs */ -#include "ssi.x" /* system services typedefs */ -#include "cm5.x" /* common timers */ -#include "cm_hash.x" /* common hash list */ -#include "cm_lib.x" /* common library */ -#include "cm_llist.x" /* common linked list */ -#include "cm_mblk.x" /* memory management */ -#include "cm_tkns.x" /* common tokens */ -#include "cm_lte.x" /* common tokens */ #include "rgu.x" /* RGU types */ #include "tfu.x" /* RGU types */ #include "lrg.x" /* layer management typedefs for MAC */ +#include "rgr.x" /* layer management typedefs for MAC */ #include "crg.x" /* CRG interface typedes */ #include "rg_sch_inf.x" /* SCH interface typedefs */ #include "rg_prg.x" /*PRG interface includes*/ +#include "du_app_mac_inf.h" #include "rg.x" /* typedefs for MAC */ - +#include "rlc_mac_inf.h" +#include "lwr_mac_upr_inf.h" /** * @brief Task Activation callback function Entity SM. @@ -87,20 +73,12 @@ registered with SSI during the LTE MAC Task initialization. * @param[in] Reason reason. * @return void **/ -#ifdef ANSI -PRIVATE INLINE void rgHdlSMEvents +static inline void rgHdlSMEvents ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PRIVATE INLINE void rgHdlSMEvents(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgHdlSMEvents) - switch(pst->event) { #ifdef LCRGMILRG @@ -108,6 +86,10 @@ Buffer *mBuf; /* message buffer */ /* Process a config. request */ cmUnpkLrgCfgReq(RgMiLrgCfgReq, pst, mBuf); break; + case EVTMACSCHGENCFGREQ: + /* Process a config. request */ + cmUnpkLrgSchCfgReq(MacSchGenCfgReq, pst, mBuf); + break; case EVTLRGCNTRLREQ: /* Process a control request */ cmUnpkLrgCntrlReq(RgMiLrgCntrlReq, pst, mBuf); @@ -121,7 +103,36 @@ Buffer *mBuf; /* message buffer */ cmUnpkLrgStsReq(RgMiLrgStsReq, pst, mBuf); break; #endif /* LCRGMILRG */ - default: + case EVENT_MAC_CELL_CONFIG_REQ: + /* Process MAC cell config */ + unpackDuMacCellCfg(MacProcCellCfgReq, pst, mBuf); + break; + case EVENT_MAC_CELL_START: + /* Process MAC cell start request */ + unpackMacCellStart(MacProcCellStart, pst, mBuf); + break; + case EVENT_MAC_CELL_STOP: + /* Process MAC cell stop request */ + unpackMacCellStop(MacProcCellStop, pst, mBuf); + break; + case EVENT_MAC_DL_CCCH_IND: + /* Process DL CCCH Ind */ + unpackMacDlCcchInd(MacProcDlCcchInd, pst, mBuf); + break; + case EVENT_MAC_UE_CREATE_REQ: + /* Process Ue Create Request */ + unpackMacUeCreateReq(MacProcUeCreateReq, pst, mBuf); + break; + case EVENT_MAC_UE_RECONFIG_REQ: + /* Process Ue Reconfig Request */ + unpackMacUeReconfigReq(MacProcUeReconfigReq, pst, mBuf); + break; + case EVENT_MAC_UE_DELETE_REQ: + { + unpackMacUeDeleteReq(MacProcUeDeleteReq, pst, mBuf); + break; + } + default: RG_FREE_MSG(mBuf); break; } @@ -142,20 +153,12 @@ Buffer *mBuf; /* message buffer */ * @param[in] Reason reason. * @return void **/ -#ifdef ANSI -PRIVATE INLINE void rgHdlNHEvents +static inline void rgHdlNHEvents ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PRIVATE INLINE void rgHdlNHEvents(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgHdlNHEvents) - switch(pst->event) { #ifdef LCRGUICRG @@ -189,20 +192,12 @@ Buffer *mBuf; /* message buffer */ * @param[in] Reason reason. * @return void **/ -#ifdef ANSI -PRIVATE INLINE void rgHdlKWEvents +static inline void rgHdlKWEvents ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PRIVATE INLINE void rgHdlKWEvents(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgHdlKWEvents) - switch(pst->event) { #ifdef LCRGUIRGU @@ -212,17 +207,11 @@ Buffer *mBuf; /* message buffer */ case EVTRGUUBNDREQ: cmUnpkRguUbndReq(RgUiRguUbndReq, pst, mBuf); break; - case EVTRGUCDATREQ: - cmUnpkRguCDatReq(RgUiRguCDatReq, pst, mBuf); - break; - case EVTRGUDDATREQ: - cmUnpkRguDDatReq(RgUiRguDDatReq, pst, mBuf); - break; - case EVTRGUCSTARSP: - cmUnpkRguCStaRsp(RgUiRguCStaRsp, pst, mBuf); + case EVENT_DL_DATA_TO_MAC: + unpackRlcDlData(MacProcRlcDlData, pst, mBuf); break; - case EVTRGUDSTARSP: - cmUnpkRguDStaRsp(RgUiRguDStaRsp, pst, mBuf); + case EVENT_BO_STATUS_TO_MAC: + unpackRlcBoStatus(MacProcRlcBoStatus, pst, mBuf); break; #ifdef LTE_L2_MEAS @@ -252,38 +241,32 @@ Buffer *mBuf; /* message buffer */ * @param[in] Reason reason. * @return void **/ -#ifdef ANSI -PRIVATE INLINE void rgHdlTFEvents +static inline void rgHdlTFEvents ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PRIVATE INLINE void rgHdlTFEvents(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgHdlTFEvents) - switch(pst->event) { -#if (defined(LCRGLITFU) || defined(LWLCRGLITFU)) - case EVTTFUBNDCFM: - cmUnpkTfuBndCfm(RgLiTfuBndCfm, pst, mBuf); - break; - case EVTTFUDATIND: - cmUnpkTfuDatInd(RgLiTfuDatInd, pst, mBuf); - break; - case EVTTFUTTIIND: - cmUnpkTfuTtiInd(RgLiTfuTtiInd, pst, mBuf); - break; -#if defined(TENB_T2K3K_SPECIFIC_CHANGES) && defined(LTE_TDD) - case EVTTFUNONRTIND: - cmUnpkTfuNonRtInd(RgLiTfuNonRtInd, pst, mBuf); - break; -#endif -#endif + case EVENT_SLOT_IND_TO_MAC: + unpackSlotInd(fapiMacSlotInd, pst, mBuf); + break; + case EVENT_STOP_IND_TO_MAC: + unpackStopInd(fapiMacStopInd, pst, mBuf); + break; + case EVENT_RACH_IND_TO_MAC: + unpackRachInd(fapiMacRachInd, pst, mBuf); + break; + case EVENT_CRC_IND_TO_MAC: + unpackCrcInd(fapiMacCrcInd, pst, mBuf); + break; + case EVENT_RX_DATA_IND_TO_MAC: + unpackRxDataInd(fapiMacRxDataInd, pst, mBuf); + break; + case EVENT_UCI_IND_TO_MAC: + unpackUciInd(FapiMacUciInd, pst, mBuf); + break; default: RG_FREE_MSG(mBuf); break; @@ -305,20 +288,12 @@ Buffer *mBuf; /* message buffer */ * @param[in] Reason reason. * @return void **/ -#ifdef ANSI -PRIVATE INLINE void rgHdlRGEvents +static inline void rgHdlRGEvents ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PRIVATE INLINE void rgHdlRGEvents(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgHdlRGEvents) - switch(pst->event) { #ifdef LCRG @@ -431,45 +406,37 @@ Buffer *mBuf; /* message buffer */ * @return S16 * -# ROK **/ -#ifdef ANSI -PUBLIC S16 rgActvTsk +S16 rgActvTsk ( Pst *pst, /* post structure */ Buffer *mBuf /* message buffer */ ) -#else -PUBLIC S16 rgActvTsk(pst, mBuf) -Pst *pst; /* post structure */ -Buffer *mBuf; /* message buffer */ -#endif { - TRC2(rgActvTsk) - switch(pst->srcEnt) { /* The originator of this message is the stack manager, * unpack and go to the respective primitive processing function */ - case ENTSM: + case ENTDUAPP: rgHdlSMEvents(pst, mBuf); break; case ENTNH: rgHdlNHEvents(pst, mBuf); break; - case ENTKW: + case ENTRLC: rgHdlKWEvents(pst, mBuf); break; - case ENTTF: + case ENTLWRMAC: rgHdlTFEvents(pst, mBuf); break; - case ENTRG: /* When scheduler instance sends msg to MAC */ + case ENTMAC: /* When scheduler instance sends msg to MAC */ rgHdlRGEvents(pst, mBuf); break; default: RG_FREE_MSG(mBuf); break; } - SExitTsk(); - RETVALUE(ROK); + ODU_EXIT_TASK(); + return ROK; }/* end of rgActvTsk */