X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fphy_stub%2Fphy_stub_msg_hdl.c;h=b88a260d387233df28ae06abf4059aad27c25546;hb=3eb33bcb19a8e47fcf8b58b417d6fa05919952cf;hp=269d44463f216a8f4eacc050bc44730c8dca7c43;hpb=2a743dfffc577ac90819776af7e0d86cb00fca57;p=o-du%2Fl2.git diff --git a/src/phy_stub/phy_stub_msg_hdl.c b/src/phy_stub/phy_stub_msg_hdl.c index 269d44463..b88a260d3 100644 --- a/src/phy_stub/phy_stub_msg_hdl.c +++ b/src/phy_stub/phy_stub_msg_hdl.c @@ -1158,6 +1158,34 @@ S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg) if(ulTtiReq->pdus[numPdus-1].pduType == 0) { DU_LOG("\nINFO --> PHY STUB: PRACH PDU"); + + /* Send RACH Ind to L2 for first UE */ + if(phyDb.ueDb.ueCb[UE_IDX_0].rachIndSent == false) + { + phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; + phyDb.ueDb.ueCb[UE_IDX_0].rachIndSent = true; + l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); + phyDb.ueDb.numActvUe++; + } +#if 0 + /* Send RACH Ind to L2 for second UE */ + if(phyDb.ueDb.ueCb[UE_IDX_1].rachIndSent == false && phyDb.ueDb.ueCb[UE_IDX_0].msgRrcReconfigComp == true) + { + phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; + phyDb.ueDb.ueCb[UE_IDX_1].rachIndSent = true; + l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); + phyDb.ueDb.numActvUe++; + } + + /* Send RACH Ind to L2 for third UE */ + if(phyDb.ueDb.ueCb[UE_IDX_2].rachIndSent == false && phyDb.ueDb.ueCb[UE_IDX_1].msgRrcReconfigComp == true) + { + phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; + phyDb.ueDb.ueCb[UE_IDX_2].rachIndSent = true; + l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); + phyDb.ueDb.numActvUe++; + } +#endif } if(ulTtiReq->pdus[numPdus-1].pduType == 1) { @@ -1181,36 +1209,6 @@ S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg) numPdus--; } - /* TODO: [SFN:SLOT] at which RACH Indication is sent should be calculated - * based on PRACH cfg index */ - /* Send RACH Ind to L2 for first UE */ - if(phyDb.ueDb.ueCb[UE_IDX_0].rachIndSent == false && ulTtiReq->sfn == 16 && ulTtiReq->slot == 6) - { - phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; - phyDb.ueDb.ueCb[UE_IDX_0].rachIndSent = true; - l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); - phyDb.ueDb.numActvUe++; - } - -#if 0 - /* Send RACH Ind to L2 for second UE */ - if(phyDb.ueDb.ueCb[UE_IDX_1].rachIndSent == false && ulTtiReq->sfn == 304 && ulTtiReq->slot == 0) - { - phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; - phyDb.ueDb.ueCb[UE_IDX_1].rachIndSent = true; - l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); - phyDb.ueDb.numActvUe++; - } - - /* Send RACH Ind to L2 for third UE */ - if(phyDb.ueDb.ueCb[UE_IDX_2].rachIndSent == false && ulTtiReq->sfn == 526 && ulTtiReq->slot == 0) - { - phyDb.ueDb.ueCb[UE_IDX_0].isCFRA = false; - phyDb.ueDb.ueCb[UE_IDX_2].rachIndSent = true; - l1BuildAndSendRachInd(ulTtiReq->slot, ulTtiReq->sfn, CB_RA_PREAMBLE_IDX); - phyDb.ueDb.numActvUe++; - } -#endif MAC_FREE(msg, msgLen); #endif return ROK;