X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac_mux.c;h=f55fb08bff21504c36a764965041cff866e00589;hb=287632f09119435e0bf1ea16e4e11fc6447c1eee;hp=153db75484aa36a2f2b5499fed766c422f8cbe21;hpb=0040ecd8cd39312eab76f039945dd24c46c8f82e;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac_mux.c b/src/5gnrmac/mac_mux.c index 153db7548..f55fb08bf 100644 --- a/src/5gnrmac/mac_mux.c +++ b/src/5gnrmac/mac_mux.c @@ -42,7 +42,7 @@ * @return void * * ****************************************************************/ -void packBytes(uint8_t *buf, uint8_t *bytePos, uint8_t *bitPos, uint32_t val, uint8_t valSize) +void packBytes(uint8_t *buf, uint16_t *bytePos, uint8_t *bitPos, uint32_t val, uint8_t valSize) { uint32_t temp; uint8_t bytePart1; @@ -97,9 +97,7 @@ void packBytes(uint8_t *buf, uint8_t *bytePos, uint8_t *bitPos, uint32_t val, ui void fillRarPdu(RarInfo *rarInfo) { uint8_t *rarPdu = rarInfo->rarPdu; - uint16_t totalBits = 0; - uint8_t numBytes = 0; - uint8_t bytePos= 0; + uint16_t bytePos= 0; uint8_t bitPos = 0; /* RAR subheader fields */ @@ -137,23 +135,10 @@ void fillRarPdu(RarInfo *rarInfo) timeAdv = rarInfo->ta; ulGrant = 0; /* this will be done when implementing msg3 */ tmpCrnti = rarInfo->tcrnti; - - /* Calulating total number of bytes in buffer */ - totalBits = EBitSize + TBitSize + rapidSize + RBitSize + timeAdvSize \ - + ulGrantSize + tmpCrntiSize; - - /* add padding size */ - totalBits += RBitSize*2 + paddingLcidSize + paddingSize; - - /* Calulating total number of bytes in buffer */ - numBytes = totalBits/8; - if(totalBits % 8) - numBytes += 1; - - rarInfo->rarPduLen = numBytes; + rarInfo->rarPduLen = RAR_PAYLOAD_SIZE; /* Initialize buffer */ - for(bytePos = 0; bytePos < numBytes; bytePos++) + for(bytePos = 0; bytePos < rarInfo->rarPduLen; bytePos++) rarPdu[bytePos] = 0; bytePos = 0; @@ -229,12 +214,10 @@ void createMacRaCb(RachIndInfo *rachIndInfo) void fillMsg4DlData(MacDlData *dlData, uint16_t msg4PduLen, uint8_t *msg4Pdu) { - uint8_t idx = 0; - - dlData->numPdu = 1; - dlData->pduInfo[idx].lcId = MAC_LCID_CCCH; - dlData->pduInfo[idx].pduLen = msg4PduLen; - memcpy(dlData->pduInfo[idx].dlPdu, msg4Pdu, msg4PduLen); + dlData->pduInfo[dlData->numPdu].lcId = MAC_LCID_CCCH; + dlData->pduInfo[dlData->numPdu].pduLen = msg4PduLen; + memcpy(dlData->pduInfo[dlData->numPdu].dlPdu, msg4Pdu, msg4PduLen); + dlData->numPdu++; } /************************************************* @@ -278,7 +261,7 @@ void fillMacCe(MacCeInfo *macCeInfo, uint8_t *msg3Pdu) void macMuxPdu(MacDlData *dlData, MacCeInfo *macCeData, uint8_t *txPdu, uint16_t tbSize) { - uint8_t bytePos = 0; + uint16_t bytePos = 0; uint8_t bitPos = 7; uint8_t idx = 0; uint8_t macPdu[tbSize]; @@ -356,7 +339,6 @@ void macMuxPdu(MacDlData *dlData, MacCeInfo *macCeData, uint8_t *txPdu, uint16_t DU_LOG("\nERROR --> MAC: Invalid LCID %d in mac pdu",lcid); break; } - } if(bytePos < tbSize && (tbSize-bytePos >= 1)) {