X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_mgr_main.c;h=f787284686ea00b9f5e7b9caa6940a36ab9c0136;hb=f73456bd55152c329601f8286ae67fe9875025bc;hp=8d076f7471250e25e3ded55a2c32527d652c8e53;hpb=dbd113538c5ed4ee5499902ce6e8bea0eb2b9db1;p=o-du%2Fl2.git diff --git a/src/du_app/du_mgr_main.c b/src/du_app/du_mgr_main.c index 8d076f747..f78728468 100644 --- a/src/du_app/du_mgr_main.c +++ b/src/du_app/du_mgr_main.c @@ -18,12 +18,14 @@ /* This file is the entry point for DU APP */ #include "common_def.h" +#include "du_tmr.h" #include "lrg.h" #include "legtp.h" #include "lrg.x" #include "lkw.x" #include "du_app_mac_inf.h" #include "du_app_rlc_inf.h" +#include "du_e2ap_mgr.h" #include "du_cfg.h" #include "du_mgr.h" #include "du_mgr_main.h" @@ -44,6 +46,8 @@ uint8_t rlcDlActvTsk (Pst *, Buffer *); uint8_t rlcDlActvInit (Ent, Inst, Region, Reason); uint8_t macActvTsk (Pst *, Buffer *); uint8_t macActvInit (Ent, Inst, Region, Reason); +uint8_t schActvTsk (Pst *, Buffer *); +uint8_t schActvInit(Ent, Inst, Region, Reason); uint8_t lwrMacActvTsk(Pst *, Buffer *); uint8_t lwrMacActvInit(Ent, Inst, Region, Reason); #ifndef INTEL_WLS_MEM @@ -362,6 +366,7 @@ uint8_t sctpInit(SSTskId sysTskId) sysTskId); return ROK; } + /******************************************************************* * * @brief Initializes RLC DL, MAC TAPA task @@ -403,9 +408,41 @@ uint8_t rlcDlInit(SSTskId sysTskId) { return RFAILED; } + } - DU_LOG("\nINFO --> DU_APP : RLC DL and MAC TAPA task created and registered to \ - %d sys task", sysTskId); +/******************************************************************* + * + * @brief Initializes SCH TAPA task + * + * @details + * + * Function : schInit + * + * Functionality: + * - Registers and attaches TAPA tasks for SCH + * + * @params[in] system task ID + * @return ROK - success + * RFAILED - failure + * + * ****************************************************************/ + uint8_t schInit(SSTskId sysTskId) + { + /* Register SCH TAPA Task */ + if(ODU_REG_TTSK((Ent)ENTMAC, (Inst)SCH_INST_START, (Ttype)TTNORM, (Prior)PRIOR0, + schActvInit, (ActvTsk)schActvTsk) != ROK) + { + return RFAILED; + } + /* Attach SCH Task */ + if (ODU_ATTACH_TTSK((Ent)ENTMAC, (Inst)SCH_INST_START, sysTskId)!= ROK) + { + return RFAILED; + } + + + DU_LOG("\nINFO --> DU_APP : SCH TAPA task created and registered to \ + %d sys task", sysTskId); return ROK; } @@ -535,7 +572,7 @@ uint8_t phyStubInit(SSTskId sysTskId) uint8_t commonInit() { /* Declare system task Ids */ - SSTskId du_app_stsk, egtp_stsk, sctp_stsk, rlc_ul_stsk, rlc_mac_cl_stsk, lwr_mac_stsk, phy_stub_slot_ind_stsk; + SSTskId du_app_stsk, egtp_stsk, sctp_stsk, rlc_ul_stsk, rlc_mac_cl_stsk, sch_stsk, lwr_mac_stsk, phy_stub_slot_ind_stsk; pthread_attr_t attr; @@ -548,7 +585,7 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for DU APP failed"); return RFAILED; } - //ODU_SET_THREAD_AFFINITY(&du_app_stsk, SS_AFFINITY_MODE_EXCL, 16, 0); + ODU_SET_THREAD_AFFINITY(&du_app_stsk, SS_AFFINITY_MODE_EXCL, 16, 0); /* system task for EGTP */ if(ODU_CREATE_TASK(PRIOR0, &egtp_stsk) != ROK) @@ -556,7 +593,7 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for EGTP failed"); return RFAILED; } - //ODU_SET_THREAD_AFFINITY(&egtp_stsk, SS_AFFINITY_MODE_EXCL, 27, 0); + ODU_SET_THREAD_AFFINITY(&egtp_stsk, SS_AFFINITY_MODE_EXCL, 27, 0); /* system task for RLC_DL and MAC */ if(ODU_CREATE_TASK(PRIOR0, &rlc_mac_cl_stsk) != ROK) @@ -566,7 +603,7 @@ uint8_t commonInit() } pthread_attr_init(&attr); pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); - //ODU_SET_THREAD_AFFINITY(&rlc_mac_cl_stsk, SS_AFFINITY_MODE_EXCL, 18, 0); + ODU_SET_THREAD_AFFINITY(&rlc_mac_cl_stsk, SS_AFFINITY_MODE_EXCL, 18, 0); /* system task for RLC UL */ if(ODU_CREATE_TASK(PRIOR1, &rlc_ul_stsk) != ROK) @@ -574,7 +611,15 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for RLC UL failed"); return RFAILED; } - //ODU_SET_THREAD_AFFINITY(&rlc_ul_stsk, SS_AFFINITY_MODE_EXCL, 22, 0); + ODU_SET_THREAD_AFFINITY(&rlc_ul_stsk, SS_AFFINITY_MODE_EXCL, 22, 0); + + /* system task for SCH */ + if(ODU_CREATE_TASK(PRIOR1, &sch_stsk) != ROK) + { + DU_LOG("\nERROR --> DU_APP : System Task creation for SCH failed"); + return RFAILED; + } + ODU_SET_THREAD_AFFINITY(&sch_stsk, SS_AFFINITY_MODE_EXCL, 22, 0); /* system task for SCTP receiver thread */ if(ODU_CREATE_TASK(PRIOR0, &sctp_stsk) != ROK) @@ -582,7 +627,7 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for SCTP failed"); return RFAILED; } - //ODU_SET_THREAD_AFFINITY(&sctp_stsk, SS_AFFINITY_MODE_EXCL, 25, 0); + ODU_SET_THREAD_AFFINITY(&sctp_stsk, SS_AFFINITY_MODE_EXCL, 25, 0); /* system task for lower-mac receiver thread */ if(ODU_CREATE_TASK(PRIOR0, &lwr_mac_stsk) != ROK) @@ -590,7 +635,7 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for Lower MAC failed"); return RFAILED; } - //ODU_SET_THREAD_AFFINITY(&lwr_mac_stsk, SS_AFFINITY_MODE_EXCL, 21, 0); + ODU_SET_THREAD_AFFINITY(&lwr_mac_stsk, SS_AFFINITY_MODE_EXCL, 21, 0); #ifndef INTEL_WLS_MEM /* system task for phy stub's slot indication generator thread */ @@ -633,6 +678,12 @@ uint8_t commonInit() return RFAILED; } + if(schInit(sch_stsk) != ROK) + { + DU_LOG("\nERROR --> DU_APP : SCH Tapa Task initialization failed"); + return RFAILED; + } + if(lwrMacInit(lwr_mac_stsk) != ROK) { DU_LOG("\nERROR --> DU_APP : Lower MAC Tapa Task initialization failed");